如何查看媒体文件在应用程序特定的存储与默认的Android图库

ih99xse1  于 2022-12-09  发布在  Android
关注(0)|答案(1)|浏览(156)

如何打开默认的Android Gallery来显示我存储在应用程序内部存储文件夹中的一些图像,例如data.com.myapp.appname.files.images
我已经尝试了几个ActivityResultContract,但我要么得到一个文件资源管理器来选择媒体文件,要么打开画廊,我得到Access Denied,尽管我在创建URI时已经通过了authority
然而,我可以成功地查看一个单一的图片从内部存储,如果我改变了URI的内部文件夹,它将启动画廊,但只会显示一个空白图片(一个空图片与灰色背景)。
这是可行的吗?
代码示例:

val intent = Intent(Intent.ACTION_VIEW)
        .addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
        .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
        .setDataAndType(
            FileProvider.getUriForFile(
                requireContext(),
                "com.company.ApplicationName.provider",
                fileAccessModule.getInternalImagesDir()
            ), "image/*"
        )
    startActivity(intent)
9jyewag0

9jyewag01#

如何打开默认的Android图库以显示我存储在应用程序内部存储文件夹中的一些图像,例如data.com.myapp.appname.files.images?
首先,没有单一的“默认Android图库”。数以万计的Android设备型号预装了数百种不同的图库式应用。而且,用户可以从Play商店和其他地方安装更多图库式应用。
他们都无法访问您的图像。您将这些图像放置在应用的私有位置。one of these libraries可能支持将私有图像目录作为数据源。
我可以从内部存储器成功查看单张图片
您正在使用FileProvider。这适用于文件。它不适用于目录。

相关问题