当用户点击网站上的下载链接时,如何自动启动android apk安装过程

时间:2013-06-11 22:27:05

标签: android deployment installer

根据developer.android.com

http://developer.android.com/tools/publishing/publishing_overview.html#publishing-website

When users browse to the download link from their Android-powered 
devices, the file is downloaded and Android system automatically 
starts installing it on the device. However, the installation process 
will start automatically only if the user has configured their 
Settings to allow the installation of apps from unknown sources.

似乎可以在没有用户交互的情况下自动启动安装过程。我已选中此框以允许来自未知来源的应用,但我仍然需要手动触发安装过程。我看到很多关于同一主题的帖子似乎与官方网站上的内容相反:

How to install APK automatically when the file download is complete (hosted on private)

how to automatically install an apk

How to automatically launch the Android installer after downloading the apk?

其他人似乎认为安装过程自动发生的唯一方法是通过已安装的应用程序:

Android: install .apk programmatically

我的要求是用户只需要点击私有部署网站上的一个链接,就可以自动触发应用程序安装,而无需用户做任何其他事情。

目前,当我点击部署网站中的链接时,它只会下载apk文件,我需要手动启动安装过程。

这些答案都没有真正让我得到我需要的东西,官方网站上的说明将是完美的,因为它不需要任何其他东西,除了我无法让它工作,安装另一个自定义应用程序来安装原始应用程序在尝试安装时也会遇到同样的问题。

我们还在内部部署iOS应用程序用于测试目的,我们采用的方式是通过清单文件链接

http://help.apple.com/iosdeployment-apps/mac/1.1/#app43ad871e

来自页面的

示例链接: <a href="itms-services://?action=download-manifest&url=http://example.com/
manifest.plist">Install App</a>

我是否需要采取一些额外的步骤才能获得官方Android网站上的说明?也许有办法让下载链接像iOS清单文件链接一样?或许还有其他方法可以达到我的要求?

感谢。

1 个答案:

答案 0 :(得分:4)

  

我的要求是用户只需要点击私有部署网站上的一个链接,就可以自动触发应用程序安装,而无需用户做任何其他事情。

这取决于Web浏览器的实现,而不是你。我使用的Web浏览器通过DownloadManager下载APK,然后在下载完成时显示Notification,其中点击Notification抽屉条目启动安装过程。虽然没有什么可以阻止浏览器自动调用启动安装过程的ACTION_VIEWACTION_PACKAGE_INSTALL Intent,但这取决于浏览器的作者。

  

为了让官方Android网站上的说明有效,我还需要做一些额外的步骤吗?

找到一些可以按照你想要的方式运行的浏览器。