检测到Android USB,但无法从USB读取文件

时间:2017-05-24 12:59:38

标签: android usb

在设备上进行USB检测后,如何从USB pendrive读取文件以及如何获取USB路径?我试过这个代码,但它不起作用。

  File f = new File("/storage/usbhost/");`
  f.isDirectory();
  File[] files = f.listFiles();

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:0)

  

如何获取USB路径

没有有用的“USB路径”。在Android 4.4之前,没有正式的方法可以使用可移动存储,而在Android 4.4及更高版本中,您无法通过文件系统访问removable storage上的任意位置。

使用the Storage Access Framework(例如ACTION_OPEN_DOCUMENTACTION_OPEN_DOCUMENT_TREE)允许用户选择应存储内容的位置,其中可能包含可移动存储空间。

答案 1 :(得分:0)

如果您正在使用24 API及更高版本

尝试使用:

StorageManager上的getStorageVolumes()

它将为您提供存储卷列表,其中包括外部存储和可移动存储。

然后,您可以在StorageVolume上使用createAccessIntent()来询问用户是否有权使用该卷。如果获得许可,则会获得Uri