Java 二级SD卡安装&;卸载广播接收机
我正在尝试创建一个广播接收器,接收sd卡的挂载、卸载和弹出。我的设备有两个外部目录,分别是/storage/sdcard0和第二个目录(这是我要听的)/storage/sdcard1。Java 二级SD卡安装&;卸载广播接收机,java,android,broadcastreceiver,Java,Android,Broadcastreceiver,我正在尝试创建一个广播接收器,接收sd卡的挂载、卸载和弹出。我的设备有两个外部目录,分别是/storage/sdcard0和第二个目录(这是我要听的)/storage/sdcard1。 我尝试了一些无效的方法 还有我的代码: <!-- in manifest --> <receiver android:name=".system.receiver.SDCardBroadcastReceiver"> <intent-filter>
我尝试了一些无效的方法
还有我的代码:
<!-- in manifest -->
<receiver android:name=".system.receiver.SDCardBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.MEDIA_REMOVED" />
<action android:name="android.intent.action.MEDIA_MOUNTED" />
<action android:name="android.intent.action.MEDIA_EJECT" />
<action android:name="android.intent.action.MEDIA_BAD_REMOVAL" />
</intent-filter>
</receiver>
//this is my java code
public class SDCardBroadcastReceiver extends BroadcastReceiver {
private static final String MOUNTED = "android.intent.action.MEDIA_MOUNTED";
private static final String UNMOUNTED = "android.intent.action.MEDIA_UNMOUNTED";
@Override
public void onReceive(Context context, Intent intent) {
Log.e("SDCARD",intent.getAction());//THIS NEVER TRIGGERS!!
if(intent.getAction()!=null && intent.getAction().equals(UNMOUNTED)){
}else if (intent.getAction()!=null && intent.getAction().equals(MOUNTED)){
}
}
}
//这是我的java代码
公共类SDCardBroadcastReceiver扩展了BroadcastReceiver{
private static final String MOUNTED=“android.intent.action.MEDIA\u MOUNTED”;
private static final String UNMOUNTED=“android.intent.action.MEDIA_UNMOUNTED”;
@凌驾
公共void onReceive(上下文、意图){
Log.e(“SDCARD”,intent.getAction());//这永远不会触发!!
if(intent.getAction()!=null&&intent.getAction().equals(未安装)){
}else if(intent.getAction()!=null&&intent.getAction().equals(MOUNTED)){
}
}
}
我的设备是4.4.2版本和引导设备我不想在任何时候检查Sd卡是否存在
请确保
SDCardBroadcastReceiver
类位于包[您的包].system.receiver
中。我确信这一点。我在同一个软件包中有几个广播正在运行,在
内部添加
。