【问题标题】:Is there a way for an Android app to grant permission for another app to access it's storage?Android应用程序有没有办法授予另一个应用程序访问其存储的权限?
【发布时间】:2020-10-28 06:04:32
【问题描述】:

我已经阅读了 Android 文档,但我并不抱希望,但我想我还是会试一试。基本上,情况是我有 2 个应用程序。应用程序 A 是一个内容管理器,它在安全服务器上检查内容文件并将其下载到 Android 设备上的存储中。应用 B(以及以后可能需要的任何其他应用)需要查看应用 A 存储中的内容。通常FileProvider 会是我的方式,但这样做有问题。

许多内容文件是带有相对链接的 HTML 文档。 FileProvider 不会向 App B 授予对每个链接文件的访问权限,因此链接经常被破坏。我不确定是否可以将 App A 下载到共享位置,因为它不是我的项目。

有没有办法:

  1. 让应用 A 授予哪些应用对其存储的读取访问权限?

  2. 拥有FileProvider 授予对目录及其所有子目录的一般读取权限?

  3. 其他人可能会想到让 App B 查看 App A 下载的文件吗?

或者,正如我所担心的那样,由于 Android 的限制,这目前是不可能的吗?

谢谢。

【问题讨论】:

    标签: android filesystems android-permissions


    【解决方案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 的团队在当天晚些时候进行了一些修改,允许我们访问所有内容,所以我没有机会尝试这个解决方案。但是,我将其标记为解决方案,因为对于遇到此问题的其他人来说,它看起来是最好的解决方案之一。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-10
    • 1970-01-01
    • 2018-09-23
    • 2012-04-29
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    相关资源
    最近更新 更多