要求:
这背后的原因是我们希望对大约1,000名用户进行有限的应用测试,我们需要一种方法来向这些用户的设备分发更新,而不会让普通大众可以访问我们的测试版软件。
我们最初在Apache Web服务器上探讨了简单地托管APK,但由于我们想限制访问,我们尝试在Web服务器上放置用户名/密码。好吧,事实证明,Android下载管理器有一个错误,如果它受到htaccess的保护,就会阻止将文件下载到手机上。
接下来我们考虑使用FTP服务器,然后在每个beta测试仪的设备上安装一个FTP客户端,但这很不错。现在这是我们的最终选择。
“内部”应用程序商店服务器似乎是最好的选择。那有解决方案吗?如果可能的话,最好是自由/开源的。
答案 0 :(得分:3)
对于初学者:即使您无法通过htaccess直接访问APK,也可以将其隐藏在某些服务器端代码后面,例如php文件,它只检查用户的凭据是否有效,并返回如果所有内容都检出,则文件附件而不是html页面。如果你是基于浏览器的,我推荐这种方法而不是使用FTP客户端。
但是,在您的要求列表中:假设这些是零售的,非根的,非自定义ROMMED设备,它 将无法自动将应用程序更新推送到设备。您可以做的最好的事情就是提醒用户,甚至下载APK-但是当您触发安装APK的意图时,用户仍然必须查看请求并手动批准安装。如果你看看像亚马逊和appbrain这样的第三方市场应用程序,他们必须以同样的方式做事。请注意,为了以这种方式安装应用,用户必须手动启用从“未知来源”安装应用,这有效地意味着Google Play商店以外的其他来源,使用“设置”应用。
也就是说,该限制仅适用于替换完整的APK。没有什么可以阻止你通过后台服务下载更新的资源(图像,声音,文本,数据库更新),但这是必须融入应用程序的东西,而不是私有市场。
答案 1 :(得分:1)
一个简单的解决方案是将apk通过电子邮件发送给目标受众。 GMail将在旁边显示附件,并在其旁边显示“安装”按钮。这适用于初始安装和更新。