【1】定义一个类继承广播接收者 相当于买了一个收音机
public class SdcardStateReceiver extends BroadcastReceiver {
//当sd卡状态发生改变后 这个方法执行
@Override
public void onReceive(Context context, Intent intent) {
//[1]获取广播的事件类型
String action = intent.getAction();
if ("android.intent.action.MEDIA_MOUNTED".equals(action)) {
System.out.println("说明sd卡被挂载了");
}else if("android.intent.action.MEDIA_UNMOUNTED".equals(action)){
System.out.println("sd卡被卸载了~~~~~");
}
}
}
【2】在清单文件里面配置 注意 意图过滤器里面可以配置多个action
<receiver android:name="com.itheima.sdcardstate.SdcardStateReceiver">
<intent-filter >
<action android:name="android.intent.action.MEDIA_MOUNTED"/>
<action android:name="android.intent.action.MEDIA_UNMOUNTED"/>
<data android:scheme="file"/>
</intent-filter>
</receiver>
【3】必须添加不然会报错
<data android:scheme="file"/>