1.  不管以何种方式卸载(正常卸载拔出、正常卸载不拔出 sd 卡、直接拔出 sd 卡)
 
系统都会发出下面的 action 广播
 
ACTION_MEDIA_EJECT
 
ACTION_MEDIA_UNMOUNTED
 
 
2.  不管以何种方式安装 sd 卡,系统都会发出下面的 action 广播
 
file:///C:/Users/liuwei/AppData/Local/YNote/data/liuwei372**34@163.com/53360e9f49a1449fbfe5073c287a4dbb/7956623_1435.png
 
3.  ACTION_MEDIA_REMOVED 与 ACTION_MEDIA_UNMOUNTED 区别
 
 
ACTION_MEDIA_REMOVED 
 
表示 sdcard 已经从卡槽移除。
 
ACTION_MEDIA_UNMOUNTED 
 
只可以说明 sd 卡没有 mount 在文件系统上面,不可以说明其已经从卡槽移除。
 
从测试 4 就可以看出这个端倪。
 
 
4.  ACTION_MEDIA_REMOVED 与 ACTION_MEDIA_BAD_REMOVAL 区别
 
 
ACTION_MEDIA_BAD_REMOVAL 
 
只有在直接拔出 sd 卡时,系统才会发送这样的 action 广播。
 
ACTION_MEDIA_REMOVED 
 
不管何种方式从卡槽拔出 sd 卡时,系统就会发送这样的 action 广播。
 
5.  选择通过 usb 共享,系统一定会发出下面的 action 广播
 
ACTION_MEDIA_SHARED
 
 
ok,明白上面的道理(你基于的开发平台是否是这样,你还需要测试,我这里只是抛砖引玉),可以在接收到这些广播的时候,根据 action 写自己的逻辑代码了。如: