如何创建像WhatsApp这样的文件夹并在其下存储文件

问题描述

希望你一切顺利。

这个问题是关于 API 级别 29 或更高级别的。 我只想创建像 WhatsApp 这样的文件夹,创建它自己的文件夹并将我的文件存储在它下面。

到目前为止,我已经尝试过媒体商店 API,但它只能让我访问音频、图像、视频、音频、文件(文档、下载)。 那么如何创建自己的应用文件夹?

我已成功将数据存储到 Document -> MY_APP_FOLDER 中,但它给了我一些奇怪的路径 /storage/emulated/0/Documents/App Name/mydata.zip/mydata.zip.

我的代码是:

val folderValue = ContentValues()
folderValue.put(MediaStore.MediaColumns.disPLAY_NAME,"mydata")
folderValue.put(MediaStore.MediaColumns.MIME_TYPE,"application/zip")
folderValue.put(MediaStore.MediaColumns.RELATIVE_PATH,"${Environment.DIRECTORY_DOCUMENTS}/App Name/")
val uri: Uri? = context.contentResolver?.insert(
    MediaStore.Files.getContentUri("external"),folderValue
)
val outputStream: OutputStream? = context.contentResolver?.openOutputStream(uri!!)
outputStream?.write(fileBytes)
outputStream?.close()

成功创建后,当我尝试从 uri 获取真实路径时,它返回给我 /storage/emulated/0/Documents/App Name/mydata.zip/mydata.zip

为什么我的路径中有两次“mydata.zip”??

请帮我解决这个问题。

先谢谢你。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)