gpt4 book ai didi

android - 如何在 Android 10、Target API 29 中从设备的共享存储(根目录)读取现有文件?

转载 作者:行者123 更新时间:2023-12-04 04:20:34 25 4
gpt4 key购买 nike

<分区>

我需要在第一次启动应用程序时读取存储在 android 根目录 (/storage/emulated/0/MyFolder) 中的文件。

在 API 级别 28 之前使用 Environment.getExternalStorageDirectory() 是可能的,但是在我迁移到 API 级别 29 之后,Environment.getExternalStorageDirectory() 被弃用并停止工作带有以下消息。

This method was deprecated in API level 29. To improve user privacy, direct access to shared/external storage devices is deprecated. When an app targets Build.VERSION_CODES.Q, the path returned from this method is no longer directly accessible to apps. Apps can continue to access content stored on shared/external storage by migrating to alternatives such as Context#getExternalFilesDir(String), MediaStore, or Intent#ACTION_OPEN_DOCUMENT.

我还尝试了 Context().getExternalFilesDir(null) ,它只返回以下路径“/storage/emulated/0/Android/data/com.myapp.appid/files/”,但我需要访问“/storage/emulated/0/”路径中的文件。

那么当以目标 API 级别 29 运行时,如何以合法方式读取位置“/storage/emulated/0/MyFolder”中的文件?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com