android - 在 Google Play 之外分发 Android 应用程序并将其链接到它

标签 android apk google-play software-distribution

假设我有一个带围墙花园的 wifi 网络,除非通过浏览器执行身份验证程序,否则用户无法访问 Internet。

假设我在 Google Play 上有一个应用程序可以为没有经验的人自动执行此过程。并假设 95% 的用户没有经验并且不愿意在未针对移动设备优化的网站上执行 SMS-OTP 身份验证。

场景

一个人问店员如何使用 Android 连接到互联网。店员建议该人下载 Android 应用程序,但该人回答说他没有互联网访问权限,因为他没有 3G 数据计划。

可能的解决方法

围墙花园门户通过用户代理检测到运行 Android 的设备,并说:“您想从我们的内部网络下载 APK 而无需转到 Google Play 吗?”。用户接受、解锁未知来源并安装该应用。

问题

在这种情况下,如果用户在其设备上下载 Google Play 可用应用的 APK,并使用相同的 key 签名,安装的应用是否会链接到 Play 并进行更新?我的意思是不使用市场链接器应用

最佳答案

这是我的旧答案,不要看,直接跳到编辑部分:

Short answer is no!

I'm sure there're geeky ways around to link an app to its Google Play variant, but your scenario of non-geeky customers I reckon the best option is to program the network to allow Android mobile access (checking the user agent) to play.google.com (maybe even from the redirection website auto-launch the google play link direct to said app).

编辑:

我正在考虑更多关于这个问题的问题,我想将我的回答更改为“我不知道”(多么可怕的回答)。但我想提出一个你可以自己做的测试。

我更改答案的原因是因为我现在记得像 Titanium 这样的应用程序,它们确实会在恢复备份时将应用程序链接到 Play。当然,Titanium 需要 root,但那是因为它会干扰其他应用程序,而不是它自己的应用程序。

因此,根据我所讨论的内容,我建议您进行一个简单的测试:

  • 构建应用程序,世界,您好!
  • 将此应用上传到 Google Play 并将其激活
  • 等待 Google 服务器几个小时以使其可用
  • 手动将相同的构建版本(具有完全相同的签名 key 等)刷入设备。
  • 重启设备(以确保系统将读取已安装的应用程序并与 Google Play 进行通信)
  • 在设备上转到 Google Play 并检查它是否显示该应用

应用可能具有相同的包名称并使用相同的 key 签名,设备上的 Google Play 本身会将其识别为相同的并链接它。

关于android - 在 Google Play 之外分发 Android 应用程序并将其链接到它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15108914/

相关文章:

java - 如何在静态方法中使用 "runOnUiThread(runnable)"?

java - 当我从 Eclipse 启动应用程序时平板电脑会重新启动

android - 在android中停用当前apk后,我们可以上传具有不同签名 keystore 的apk吗

android - 未找到 Google Play 显着披露

android - 如何以编程方式读取 Android 中的 wifi 密码

java - 为什么RecyclerView没有显示任何项目?

android - 将两个 apk bundle 到一个 apk 中?

android导出签名与未签名的应用程序

android - 在提交 ANDROID 之前如何保存屏幕截图和元数据?

android:检测应用程序是否从市场下载