【发布时间】:2021-03-14 19:48:47
【问题描述】:
各位开发者,
我在使用存储访问框架 (SAF) 将我们的应用迁移到新的 API 30 标准时遇到了一个问题。
我已成功迁移文件结构,现在正在使用内部 (FilesDir) 路径。
使用 MediaStore-Api 获取图像也很有效。
但有一个大问题我似乎无法解决。
在我们的应用程序中,我们使用 API“Mapsforge”进行离线地图。
这个 API 使用了一个 Java.IO.File-Object,我们从一个“.map”文件的路径中获得,这个文件大约有 2GB 大。
这个文件不是我们提供的,是客户自己管理的文件,放到设备上供我们使用,因为所有的“.Map”-文件都是自定义的。
由于 SAF 返回 Android.Net.Uri,我似乎无法在不复制文件内容的情况下将其转换为 Java.IO.File,因此在设备上使用更多存储空间。
有什么方法可以使用 SAF 来获取我可以在代码中使用的 Java.IO.File-Object?
如果不是,那么 Android 11 让我的客户很难管理他的存储空间。
【问题讨论】:
标签: storage-access-framework android-11 storage-access-api