【问题标题】:Android, sideloading applications and keep them up to date via Google PlayAndroid,侧载应用程序并通过 Google Play 保持最新状态
【发布时间】:2013-02-07 08:00:59
【问题描述】:

我的公司想向我们选定的一组客户提供 Android 设备。

这样做,我们希望为用户提供我们的移动应用程序。该应用程序已经在 Google Play 上,但我们希望避免用户自行下载和安装。我们更愿意让设备准备就绪,并且已经安装了应用程序。

我们找到了几种无需登录市场即可在手机上手动安装 APK 的方法。但似乎这样做,用户将无法通过Google Play 更新应用程序,因为该应用程序不会被识别为已安装。

有什么想法吗?

【问题讨论】:

  • 如果您安装使用相同密钥库手动签名的 apk,市场将检测到它已安装,您的客户端将能够对其进行更新。
  • @Android-Developer 我应该启用从“未知来源”选项安装吗?还是被签了就不麻烦了?
  • 您也必须启用该选项,以便您可以从与 Google Play 不同的来源安装它。另一件事是为了以防万一,包名应该与在 Play 商店中上传的应用程序相同。不应该对包名称进行任何更改以识别它是仅供客户端使用的版本。
  • @Android-Developer 好的,谢谢,有用的建议。我将尽快尝试这种方式,并在这里向社区提供反馈。安装后,是否可以禁用“未知来源”,否则会阻止应用启动?
  • @Android-Developer 成功了!

标签: android google-play apk sideloading


【解决方案1】:

截至 2015 年 1 月,这似乎是不可能的。以下是我从 Google Play 开发者支持处得到的回复:

侧载应用不会通过 Play 商店更新。如果您想更新应用程序,您需要在手机上卸载该应用程序,然后通过 Play 商店重新安装该应用程序。

不知道有没有人找到解决办法?

【讨论】:

  • 我选择您的帖子作为答案,因为它反映了 Google 的实际位置。
  • 很遗憾,这似乎是 Google 的立场。显然,这不是我所希望的答案。
  • “sideloading”这个词混淆了两个非常不同的东西: 1. 哪个文件服务器?与 2. 哪个签名?安全性大约是 2,而不是 1。问题开始在 1 和 2 之间做出非常有趣的区分。接受的答案不是 :-(
【解决方案2】:

总结@Android-Developer的答案和OP的评论讨论:

无论安装源如何,Google Play 都能识别 APK 的应用签名。只要您在生成 APK 时使用相同的包名和密钥库,Google Play 就能够检测到较新的版本并触发更新。

要在不登录 Google 帐户的情况下安装应用,请在“设置”中启用“从未知来源安装”选项。安装完成后可以禁用它。

【讨论】:

  • 正如@IvoRenkema 在他的回答中所说,似乎无法使用市场更新侧载应用程序。
  • 已确认,如果您使用相同的密钥进行签名,您可以从 2020 年的 Playstore 更新(手动)应用。
  • @Blundell 如果我上传到谷歌商店的 apk 有更新版本,更新会自动显示在我的侧载应用程序上吗?或者用户必须手动进入 playstore 并自行安装,以使用新应用程序形式的谷歌商店覆盖旧的侧载 apk
  • 它会自动显示更新可用。他们必须第一次进入 PlayStore 并在第一次遵循通常的 PlayStore 自动规则后按“更新”
【解决方案3】:

如果您的手机已root,您可以安装Titanium Backup,然后长按您侧面加载的应用程序包并选择“附加到市场”选项。现在您可以通过 Google Play 收到更新了。
我不建议这样做,我的意思是永远不要安装破解或修补过的应用程序,因为版权或安全风险,但安装修改版的 Google Play 可以使修补过的侧载应用程序在通过 Titanium Backup 将它们附加到市场后进行升级。购买的应用不需要这样做,因为它们已在您的 Google 帐户中注册,因此附加到市场就足够了。

【讨论】:

    【解决方案4】:

    要让手动安装的 APK 显示在 Google Play 商店的更新或安装部分,请执行以下任一操作:

    1.) 手动安装 APK,其 APK 文件名与 Google 知道的应用程序相同(即从 APK 下载网站,如 APKMirror.com)。

    2.) 如果您在保存时更改了 APK 名称,它将不会作为已安装的应用程序显示在 Google Play 商店中。

    但是,如果应用有更新,您必须在商店中一次性搜索该应用并进行更新。它会在应用程序的商店页面上为您提供更新选项。一旦通过商店更新,它将从现在开始显示在商店的已安装/更新部分。

    为什么会这样?因为 UPDATE 将通过商店完成,并且它在更新过程中使用的 APK 名称是 Google 所知道的应用程序的名称。

    如果没有更新,请执行选项 #1。

    我总是将应用程序名称和版本信息添加到文件名的前面,这样我就知道它是什么供以后使用(因为如果我手动安装,我可能会将其保存用于多个/未来的设备)。 我还在末尾保留了原始名称,因此如果需要,我可以将其重命名为原始名称。 Android 是我见过的唯一一个在安装过程中文件名很重要的操作系统。

    【讨论】:

    • 第二步,在 App Store 中搜索和更新,不正是这里的问题吗?这样,每部手机仍应与(现有)谷歌帐户相关联。 AFAICT 唯一解决的问题是确保应用程序无论如何都可以更新 - 根据我的经验,只要你们都使用相同的包名称和签名密钥,就可以保证。
    猜你喜欢
    • 2015-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多