问题标签 [android-fileprovider]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2076 浏览

android - 与 FileProvider 共享视频 + 文本导致 Permission Denial 异常

我在与文件提供者和 Intent.EXTRA_TEXT共享视频.mp4文件时拒绝了权限。

如果我删除该行:

一切正常。但我需要视频文件+额外的文本。

我认为问题是:共享uri中的caption=%23myappHashtag,但我该如何解决?

太感谢了。

例外:

清单文件提供者:

0 投票
2 回答
754 浏览

android - Android 的 FileProvider 真的支持 external-files-path 吗?

我遇到了 FileUriExposedException 东西,您尝试将 file:/// Uri 发送到另一个应用程序(在本例中为相机),我应该改用 FileProvider(导致 api 24 Nougat 崩溃)。

在我们的应用程序中,我们使用 Context 的getExternalFilesDir(String)方法生成一个文件:

FileProvider文档让我相信如果我希望功能与现在相同,我应该external-files-path在我的中使用。paths.xml

但是在谷歌搜索了一些之后,我发现了一些让我认为 FileProvider 有问题的东西,或者至少是 FileProvider 的文档......

所以

  1. external-files-path如果我想匹配我的应用程序当前的工作方式,我是否认为我应该使用?
  2. 文档/FileProvider 真的损坏/不正确,我应该改用cwac-provider之类的东西吗?

更新

为了完整起见,正如@CommonsWare 下面推荐的那样,使用 24.2.0 版本support-v4对我有用。

0 投票
3 回答
3724 浏览

android - FileProvider“找不到配置的根”异常

这些 FileProvider 中还有一个失去了灵魂……我已经研究这个问题超过一天了,看来我错过了一些大事。任何帮助,将不胜感激!

我正在尝试使用 FileProvider 发送带有附件的电子邮件。

我的 AndroidManifest.xml 的一部分:

文件路径.xml:

创建附件:

以及 Uri 的创作:

其中fullFileName是在片段中返回的用于文件创建的值。

在 Uri 创建行我得到异常:

正如此处的文档(https://developer.android.com/reference/android/support/v4/content/FileProvider.html)所述:

< external-files-path name="name" path="path" /> 代表应用外部存储区域根目录中的文件。该子目录的根路径与 Context#getExternalFilesDir(String) Context.getExternalFilesDir(null) 返回的值相同。

所以我的 xml 中的 external-files-path 似乎与context.getExternalFilesDir我使用的方法相匹配。这两个地方我都有“导出”文件夹。当局似乎匹配......我的问题可能是什么。我找不到找到并打印 FileProvider 的“已配置根”的方法

0 投票
1 回答
2303 浏览

java - FileProvider - 由于 FileNotFoundException 无法保存文件:/Download/TempFile.html(没有这样的文件或目录)

似乎Android N现在需要FileProvider,所以我正在尝试实现FileProvider将文件从网络保存到本地临时位置,然后我需要读取这个临时文件。

我这样做是为了设置 FileProvider:

清单.xml:

然后我的provider_paths.xml文件res/xml夹中有一个文件,其中包含:

最后,这是我必须创建临时文件的 java 代码:

final FileWriter writer = new FileWriter(tempFile);抛出异常的行java.io.FileNotFoundException: /Download/TempFile.html (No such file or directory)

关于我做错了什么有什么建议吗?谢谢!

更新/编辑:

当前保存文件的方法将文件放置在此处: /storage/emulated/0/Download/TempFile.html

在我尝试使用 Intent 使用它之前,这很好,如下所示:

然后抛出这个异常:

android.os.FileUriExposedException:file:///storage/emulated/0/Download/TempFile.html exposed beyond app through Intent.getData()

0 投票
0 回答
2511 浏览

android - 文件提供程序不适用于图像捕获

我花了很多时间试图找到解决方案。我尝试了 getExternalStoragePublicDirectory() 和 getExternalFilesDir() 以及许多其他东西。但是onActivityResult还是会带来错误resultCode。它仅在我从 fileProvider 切换到 Uri.fromFile() 时起作用。但 Android 手册严格建议对新 API 使用 FileProvider。请告诉我我做错了什么。

清单片段:

文件路径.xml

爪哇

0 投票
1 回答
66 浏览

android - 一个简单的“保存文件”代码的解释

我想了解有关 Android 应用程序的更多信息。
所以,我想解释一下out=context.openFileOutput arguments 。

任何帮助将不胜感激。

0 投票
3 回答
11961 浏览

android - 使用 FileProvider 时未找到处理 Intent 的 Activity

在我的应用程序中,我有一个自定义的自动下载并安装 APK,它的工作原理是这样的

安卓清单:

Provider_path (对不起,由于某种原因,所以削减了路径标签)

外部路径名称=“我的文件夹”路径=“。”/>

当文件完成下载 onComplete 被调用但活动没有开始:

没有找到处理 Intent 的活动 { act=android.intent.action.VIEW dat=content://com.myapp/myfolder/myfile.apk typ=application/vnd.android.package-archive flg=0x4000000 }

使用普通文件时://它确实有效

使用文件提供程序时我缺少什么吗?活动是否因为找不到文件而无法启动?我需要额外的许可吗?(目前我在外部存储上有 INTERNET、READ 和 WRITE)

0 投票
1 回答
4375 浏览

java - 来自文件提供程序 Uri 的 Android 7.0 通知声音未播放

我正在更改我的应用程序代码以支持 Android 7,但是在从 FileProvider 传递 Uri 的 NotificationCompat.Builder.setSound(Uri) 中,通知不会播放任何声音,在 Android 6 中使用 Uri.fromFile() 可以正常工作。

mp3 文件位于:

/Animeflv/cache/.sounds/

这是我的通知代码:

knf.animeflv.RequestBackground

这是我的 UtilSound.getSoundUri(int)

在 AndroidManifest.xml 中:

provider_paths.xml:

0 投票
1 回答
1450 浏览

android - Android FileProvider导致相机/画廊随机崩溃

再会。

使用从开发人员指南获得的帮助,我能够让我的应用程序的照片捕捉工作。该活动通常涉及捕获一张或多张图像(例如在 photogrid 相机拼贴应用程序中)。它大部分时间都可以在大多数设备上运行,除了我自己的设备(Android 5.0.1)。问题是,相机/图库应用程序崩溃,在堆栈跟踪中给我一个安全权限拒绝错误,我已经搜索了解决方案并实施了它们,但无济于事。崩溃通常是随机的,但更有可能发生在以下情况: 1. 我正在拍摄第二张照片 2. 我的相机设置为最高分辨率:13MP(在较低分辨率下几乎不会发生)

虽然在其他情况下很少发生,但它的出现让我发疯。这是我的代码:

分段

AndroidManifest.xml

文件路径.xml

这是我得到的错误

0 投票
2 回答
1350 浏览

android - getUriForFile() throws Failed to find configured root that contains

我正在制作一个应用程序,我需要拍照,然后在数据库中保存一些数据,但是当我尝试从照片中获取 URI 时出现此错误:

这是我的代码

我的供应商:

还有我的 file_paths.xml

我完全按照文档做了,你们能帮我找到解决方案吗?

非常感谢!