我正在尝试使用broadcastReceiver来检测打开USB存储设备,尽管我可以检测使用
android.intent.action.UMS_CONNECTED操作连接的USB
和
使用android.intent.action.UMS_disCONNECTED操作断开连接.
如何检测USB存储?
和
使用android.intent.action.UMS_disCONNECTED操作断开连接.
如何检测USB存储?
解决方法
以下是如何检查存储卡是否已安装/卸载.您可以更改它以检查已删除/已留下.我通过注册一个broadcastReceiver来获取“挂载事件”,然后检查存储卡的状态,如果没有安装,并且它不在检查(再次挂载卡时的状态),它将被卸载或该卡已被删除.
public class MemCardReceiver extends broadcastReceiver { @Override public void onReceive(Context context,Intent intent) { if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ onMemcardMounted(); } else if (!Environment.getExternalStorageState().equals(Environment.MEDIA_CHECKING)){ onMemorycardUnMounted(); } } private void onMemorycardUnMounted() {} private void onMemcardMounted() {} }
并在ManifestFile
<receiver android:enabled="true" android:exported="true" android:name="the.name"> <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>
有几个不同的状态checkout this如果还有其他的说法.去除
原文地址:https://www.jb51.cc/android/125912.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。