我正在为Play商店准备我的应用程序并计划将一个组件作为单独的安装包交付(因为我的客户无法恢复源代码,但应用程序是用他的密钥签名的)。我想到了两种方法。我的需求就是这些:拥有"未知来源的用户"停用应该能够安装第二个应用程序。并且:永远不应将用户重定向到Google Play商店。
这两个应用都是免费的。
我已经查找了可让我从Google Play下载其他APK的解决方案,只需向用户显示安装屏幕即可加入安装。我想要一个解决方案,我向PlayStore应用程序发送了一个意图,它显示了应用程序名称,权限和安装按钮。我一无所获。有人在这里有任何经历吗?
我以为我可以将这个额外的应用程序打包到我的封闭应用程序的资产中。我需要将其写入文件系统并向系统发送安装程序包的意图。问题:该应用程序未从谷歌播放加载,因此它的来源未知。如果我使用PackageManager并让它安装APK,那么权限INSTALL_PACKAGES是否允许我的应用程序在用户的设备上安装此第二个应用程序(因为用户已经接受我的应用程序可能会安装软件包)?
< / LI> 醇>我希望有人可以提供帮助。并提前感谢你。
答案 0 :(得分:4)
我的需求就是这些:停用“未知来源”的用户应该能够安装第二个应用程序。并且:永远不应将用户重定向到Google Play商店。
这种组合是不可能的,除非Android和/或Play商店存在重大安全漏洞。通过Play商店安装应用程序的唯一方法是通过Play商店应用程序。
我想要一个解决方案,我向PlayStore应用发送了一个意图,它显示了应用名称,权限和安装按钮。
未导出该活动。欢迎您使用market://
Uri
引导用户访问Play商店,在那里他们可以查看第二个应用,并自行决定是否下载并安装它。
因为用户已经接受我的应用可能会安装包
您的应用无法直接安装软件包,除非使用固件签名密钥签名或安装在系统分区上(例如,由root用户设备用户安装),因为这是您可以保留{{1权限。我们欢迎普通的SDK应用创建INSTALL_PACKAGES
或ACTION_VIEW
ACTION_INSTALL_PACKAGE
来请求安装该应用,但用户需要启用“未知来源”。