Android 监听SD卡插入与拔出
简单记录一下Android 如何监听SD卡插入与拔出,注意事项:
- 继承广播:
public class SdStatusReceiver extends BroadcastReceiver {
String SD_IN = "android.intent.action.MEDIA_MOUNTED";
String SD_OUT = "android.intent.action.MEDIA_UNMOUNTED";
@Override
public void onReceive(Context context, Intent intent) {
if (SD_IN.equals(intent.getAction())) {
VDebug.println("插入sd卡");
} else if (SD_OUT.equals(intent.getAction())) {
VDebug.println("拔出sd卡");
}
}
}
2.注册:
<receiver android:name=".SdStatusReceiver">
<intent-filter>
<action android:name="android.intent.action.MEDIA_UNMOUNTED" />
<action android:name="android.intent.action.MEDIA_MOUNTED" />
<data android:scheme="file"/>
</intent-filter>
</receiver>
注意,一定要添加这:
<data android:scheme="file"/>
注册信息中的Data项中的Scheme设置为file,这就是完善系统发送广播的uri,系统发送此广播时,在前面加了“file://”。如果不添加这句话,就无法成功接收的广播。