Android 如何检测我的平板电脑是否连接到USB以及USB是否能够读/写
我使用的是松下平板电脑设备,它有USB端口,可以将任何pendrive直接连接到平板电脑 我的应用程序需要读取数据并能够将数据写入USB 有时,当usb连接时,由于连接松动或未正确安装或usb未响应,写入usb正在归档Android 如何检测我的平板电脑是否连接到USB以及USB是否能够读/写,android,file,usb,android-external-storage,Android,File,Usb,Android External Storage,我使用的是松下平板电脑设备,它有USB端口,可以将任何pendrive直接连接到平板电脑 我的应用程序需要读取数据并能够将数据写入USB 有时,当usb连接时,由于连接松动或未正确安装或usb未响应,写入usb正在归档 因此,在我开始向USB写入数据之前,我想检查USB是否处于写入数据的状态?我甚至想知道我的设备在任何时候是否与USB连接(点击“上传”按钮即可)您可以为此注册广播接收器 IntentFilter filter = new IntentFilter(); filter.addAct
因此,在我开始向USB写入数据之前,我想检查USB是否处于写入数据的状态?我甚至想知道我的设备在任何时候是否与USB连接(点击“上传”按钮即可)您可以为此注册广播接收器
IntentFilter filter = new IntentFilter();
filter.addAction("android.hardware.usb.action.USB_STATE");
接受者
public class USBReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
if (intent.getExtras().getBoolean("connected")) {
//if connected you can read/write data to file.
}
}
}
您能建议在活动中单击按钮吗?。假设我想在单击“导出”按钮时检查连接状态或装载状态。我的要求是当用户单击导出时,我应该执行以下操作。*如果USB未连接,我必须显示信息消息说“USB未连接”*如果USB未处于读/写状态,即使它已连接,我必须显示消息说“USB未处于正确状态”或者一些这样的消息*如果它已连接且处于写入状态,则继续将日期写入USB
您可以使用intentfiler来完成此操作。
。奇怪的措辞。我想说,你必须为此注册一个广播接收器。您没有演示如何执行此操作。为Intent.ACTION\u MEDIA\u安装了和Intent.ACTION\u MEDIA\u删除了。在onReceive()
中,您可以获取笔驱动器的文件路径的uri。但是您可以做得简单得多。只需向用户显示由getExternalFilesDirs()
返回的最多三个项目,并让用户选择一个即可。第三项是USB笔驱动器,如果第二项是SD卡,那么第三项是USB笔驱动器。尽管如此,您应该意识到,您最多只能写入笔驱动器上特定于应用程序的目录。如果你想在任何地方都写,你必须使用存储访问框架
,让用户选择具有意图的驱动器。操作\u打开\u文档\u树
或类似操作。