香雨亭榭 2019-04-08 16:54 采纳率: 0%
浏览 823

安卓6.0版本,应用程序申请U盘的访问权限之后,U盘在系统中/dev/block/目录下的设备节点,被删除?

1. 环境:安卓6.0 通过USB口插入U盘(不是OTG口)

2. U盘的操作步骤

1. 插入U盘,在设备节点/dev/block/目录下可以看到U盘的驱动设备节点 sda 和 sda1,如下图。

图片说明

2. 通过ES文件浏览器应用程序访问USB设备的权限申请之后,如下图的权限授权

图片说明

###3. 再查看/dev/block/目录,U盘的设备节点就被删除了,之前的U盘挂载路径也被删除了

图片说明

问题:目前项目需要用到U盘的额U盘的绝对路径,但是再跟文件系统中,怎么也找不到U盘的挂载路径,但是通过ES文件浏览器却可以看到U盘的所有内容,但是也查不出U盘的挂载路径信息?

希望各位对安卓这一块比较熟悉的大神和各位安卓大神,不吝赐教一下,我是坐Linux驱动的,对安卓懵逼一个,项目比较急,急求。。。

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-08 19:27
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题是由于Android 6.0及其以上的版本引入的新的安全机制导致的。这些新机制旨在保护用户免受恶意软件的损害,并且禁止某些类型的文件访问请求。因此,当您尝试从应用程序向U盘写入数据时,可能会遇到权限错误。

    为了解决此问题,您可以考虑以下几种方法:

    1. 使用USB闪存驱动程序来读取和写入U盘。
    2. 如果可能的话,请使用Android Studio中的ADB(Android Debug Bridge)命令行工具进行操作。
    3. 在您的项目中添加一个模拟器或真实设备作为测试环境,并使用USB线将设备连接到计算机上。
    4. 检查您的应用是否正确地实现了读取和写入U盘的功能,并确保所有相关的安全性措施都已到位。

    如果您无法解决这个问题或者需要更具体的帮助,请提供更多的详细信息,以便我能够更好地为您提供支持。

    评论

报告相同问题?