如何构建自己的Android应用商店服务器?

时间:2012-02-27 22:38:33

标签: android app-store enterprise

要求:

  1. 必须通过互联网访问,而不仅仅是内部访问 公司网络(即必须有一个前端界面)
  2. App Store服务器必须在内部托管(即没有第三方托管服务)
  3. 最好通过用户名/密码确保
  4. 最好能够自动将更新推送到授权设备
  5. 这背后的原因是我们希望对大约1,000名用户进行有限的应用测试,我们需要一种方法来向这些用户的设备分发更新,而不会让普通大众可以访问我们的测试版软件。

    我们最初在Apache Web服务器上探讨了简单地托管APK,但由于我们想限制访问,我们尝试在Web服务器上放置用户名/密码。好吧,事实证明,Android下载管理器有一个错误,如果它受到htaccess的保护,就会阻止将文件下载到手机上。

    接下来我们考虑使用FTP服务器,然后在每个beta测试仪的设备上安装一个FTP客户端,但这很不错。现在这是我们的最终选择。

    “内部”应用程序商店服务器似乎是最好的选择。那有解决方案吗?如果可能的话,最好是自由/开源的。

2 个答案:

答案 0 :(得分:3)

对于初学者:即使您无法通过htaccess直接访问APK,也可以将其隐藏在某些服务器端代码后面,例如php文件,它只检查用户的凭据是否有效,并返回如果所有内容都检出,则文件附件而不是html页面。如果你是基于浏览器的,我推荐这种方法而不是使用FTP客户端。

但是,在您的要求列表中:假设这些是零售的,非根的,非自定义ROMMED设备,它 将无法自动将应用程序更新推送到设备。您可以做的最好的事情就是提醒用户,甚至下载APK-但是当您触发安装APK的意图时,用户仍然必须查看请求并手动批准安装。如果你看看像亚马逊和appbrain这样的第三方市场应用程序,他们必须以同样的方式做事。请注意,为了以这种方式安装应用,用户必须手动启用从“未知来源”安装应用,这有效地意味着Google Play商店以外的其他来源,使用“设置”应用。

也就是说,该限制仅适用于替换完整的APK。没有什么可以阻止你通过后台服务下载更新的资源(图像,声音,文本,数据库更新),但这是必须融入应用程序的东西,而不是私有市场。

答案 1 :(得分:1)

一个简单的解决方案是将apk通过电子邮件发送给目标受众。 GMail将在旁边显示附件,并在其旁边显示“安装”按钮。这适用于初始安装和更新。