Android INSTALL_PACKAGES 权限和非 PlayStore 应用

sky-heaven 阅读:82 2024-09-07 23:24:14 评论:0

我正在为 Play 商店准备我的应用程序,并计划将一个组件作为单独的安装包提供(因为我的客户无法恢复源代码,但该应用程序是用他的 key 签名的)。我想过两种方法。我的需求就是这些:停用“未知来源”的用户应该能够安装第二个应用程序。并且:永远不应将用户重定向到 Google Play 商店。

这两款应用都是免费的。

  1. 我查找了可以让我从 Google Play 下载额外 APK 并仅向用户显示安装屏幕以接受安装的解决方案。我想要一个解决方案,我向 PlayStore 应用程序发送了一个 Intent ,它显示了应用程序名称、权限和安装按钮。我什么也没找到。有人在这里有经验吗?

  2. 我想我可以将这个额外的应用程序打包到我的封闭应用程序的 Assets 中。我需要将它写入文件系统并向系统发送安装包的 Intent 。问题:该应用程序不是从 Google Play 加载的,因此它的来源未知。如果我使用 PackageManager 并让它安装 APK,INSTALL_PACKAGES 权限是否允许我的应用在用户设备上安装这个第二个应用(因为用户已经接受我的应用可以安装包)?

我希望有人能提供帮助。提前谢谢你。

请您参考如下方法:

My needs are just these: Users with "unknown sources" deactivated should be able to install the 2nd app. And: The user should never be redirected to Google Play store.

这种组合是不可能的,除非 Android 和/或 Play 商店存在重大安全漏洞。通过 Play 商店安装应用的唯一方法是通过 Play 商店应用。

I would like a solution, where I sent an intent to the PlayStore app and it displayed the app name, permissions and the install button.

该 Activity 未导出。欢迎您使用 market:// Uri 将用户引导至 Play 商店,他们可以在其中查看第二个应用并自行决定是否购买下载并安装它。

since the user already accepted that my app may install packages

你的应用不能直接安装包,除非它使用固件签名 key 签名或安装在系统分区上(例如,由 root 设备用户),因为这是你可以持有 的唯一方法INSTALL_PACKAGES 权限。欢迎普通SDK应用创建ACTION_VIEWACTION_INSTALL_PACKAGEIntent请求安装应用,但用户需要“未知来源”启用。


标签:Android
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号