我有一条通知,显示下载文件的进度。完成后,点击它应打开文件保存目录(我的应用程序的外部存储目录)。该意图是通过以下方式设置的,然后传递给PendingIntent。
val dir = getExternalFilesDir("storage")
val intent = Intent(Intent.ACTION_VIEW)
intent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION
intent.data = FileProvider.getUriForFile(context, authority, dir)
intent.type = DocumentsContract.Document.MIME_TYPE_DIR
实际发生的情况-文件浏览器打开,但显示“最近”目录(?)。
我还尝试了什么:
注意:FileProvider设置正确,传递给Intent数据的uri是正确的。 另外请注意:如果可能的话,我想避免将这些文件保存为“下载”。
答案 0 :(得分:0)
完成后,点击它应该打开文件保存的目录(我的应用程序的外部存储目录)。
这从来不是Android的功能。
以以下方式设置意图,然后将其传递给PendingIntent。
FileProvider
不支持目录。尽管某些文件管理器可能会默认ACTION_VIEW
不支持目录。 DocumentsContract
与FileProvider
无关。
传递绝对路径而不是内容URI,但这没什么作用
那应该用FileUriExposedException
使您的应用崩溃。