Android应用程序有没有办法授予另一个应用程序访问其存储的权限?
Posted
技术标签:
【中文标题】Android应用程序有没有办法授予另一个应用程序访问其存储的权限?【英文标题】:Is there a way for an Android app to grant permission for another app to access it's storage? 【发布时间】:2020-10-28 06:04:32 【问题描述】:我已经阅读了 android 文档,但我并不抱希望,但我想我还是会试一试。基本上,情况是我有 2 个应用程序。应用程序 A 是一个内容管理器,它在安全服务器上检查内容文件并将其下载到 Android 设备上的存储中。应用 B(以及以后可能需要的任何其他应用)需要查看应用 A 存储中的内容。通常FileProvider
会是我的方式,但这样做有问题。
许多内容文件是带有相对链接的 html 文档。 FileProvider
不会向 App B 授予对每个链接文件的访问权限,因此链接经常被破坏。我不确定是否可以将 App A 下载到共享位置,因为它不是我的项目。
有没有办法:
让应用 A 授予哪些应用对其存储的读取访问权限?
拥有FileProvider
授予对目录及其所有子目录的一般读取权限?
其他人可能会想到让 App B 查看 App A 下载的文件吗?
或者,正如我所担心的那样,由于 Android 的限制,这目前是不可能的吗?
谢谢。
【问题讨论】:
【参考方案1】:只要您的两个应用(A 和 B)都使用相同的证书进行签名,那么您就可以在彼此之间共享资源。这是 Play 商店提供的许多应用程序中的常见做法。
https://developer.android.com/guide/topics/manifest/permission-element.html#plevel https://developer.android.com/guide/topics/manifest/manifest-element.html#uid
【讨论】:
我们不知道的是,App B 的团队在当天晚些时候进行了一些修改,允许我们访问所有内容,所以我没有机会尝试这个解决方案。但是,我将其标记为解决方案,因为对于遇到此问题的其他人来说,它看起来是最好的解决方案之一。以上是关于Android应用程序有没有办法授予另一个应用程序访问其存储的权限?的主要内容,如果未能解决你的问题,请参考以下文章
Android:检查是不是在另一个类中授予权限,而不是在 MainActivity
有没有办法从whatsapp获取在线状态到另一个android应用程序
有没有办法使用 worklight 6.2 或 phonegap 混合应用程序从 android 和 ios 中的另一个应用程序启动一个应用程序?