现在公司在做一个产品用的是AMD的处理器和android的操作系统。我们的产品外面有个SD卡口是给用户使用的。但AMD又没有sd卡接口,所以我内置了一个读卡器在我们的产品里面,这样外面就可以有一个sd卡口给用户使用了。这样,用户的使用过程是通过sd卡插拔读卡器。读卡器的USB口是始终插在板子上没有动过的。但现在发现android对sd卡在读卡器上的插拔动作是不能识别的。也就是说,在sd卡插拔读卡器时,android内核没有检测到。要解决这个问题只有修改android的内核源码,改变它的识别机制。我用同样的设备在XP和UBUNTU上都有试过,是可以检测到sd卡插拔动作的。ubuntu上是通过udev机制实现的,有人移植过udev到android上吗?或者有其他解决办法。雪地里跪求高手指教!!!

解决方案 »

  1.   

    你能够确定Android系统不能识别SD卡在读卡器上的拔插动作吗?
      

  2.   

    如果是通过读卡器,那么你拔插时,就应该是当USB用的而不是SD卡,所以要检测的是USB拔插时间,这个android默认是没有的,需要驱动处理下
      

  3.   

    首先看看你的sd卡插拔的动作的UEVENT有没有被vold接收到,同时你需要正确配置你的vold.conf 来匹配你的sdcard的uevent。
    代码在system/core/vold这个目录里头
      

  4.   

    vold好像是1.5以前使用的,后来又改了,但不是udev,这块没有看过,楼主看看android源码是如何实现的。