【发布时间】:2014-06-27 17:03:50
【问题描述】:
我已经用谷歌搜索了足够多的东西,但找不到这个案例。我想编写一个仅对特定应用程序共享/可访问的自定义内容提供程序。
我有这种情况:
- 在 Google Play 上有多个应用程序。说 A、B 和 C。
- 想要编写一个内容提供程序,例如 Z,它只能由 A、B 和 C 访问。我正在考虑将内容提供程序“Z”作为自己的 apk 发布。
- 当 Z 安装在设备上时; A、B 和 C 可以访问 Z。如果未安装 Z,则第一个应用将直接到 Google Play 安装 Z。
现在我的问题是:
是否有可能编写这样的内容提供程序,仅在特定应用程序之间共享? android:exported="false" 使其无法被任何其他外部应用程序访问。当 android:exported 设置为 false 时,android:grantUriPermissions="true" 不起作用,并且将 android:exported 设置为 true 可以使其公开访问。
如果它们看起来更适合我在多个应用之间共享信息的要求,请随时分享其他解决方案。
【问题讨论】:
-
不,它只能被某些应用程序选择性地访问。相反,谷歌所做的——不仅是
ContentProviders,还有其他一切——检查调用应用程序的签名,只允许它自己的应用程序访问。
标签: android android-contentprovider android-sharing