Play Store应用为何出现在Galaxy Store中?更新从哪来?依赖问题如何处理?

5次阅读
没有评论

问题描述

最近在三星 Galaxy S9 上使用 Galaxy Store 时发现了一些奇怪的事情。我发现许多非三星独占的应用(如 DJI Fly、Zoom Meetings 平台和 Discord)显示在 Galxy Store 中,并提示有新版本可以更新,尽管这些应用的“应用信息”标明它们是从 Google Play Store 下载的。

这种现象是否正常?按更新按钮后,我会突然从 Galaxy 店下载这些应用吗?这会让我依赖于开发者何时在 Galaxy Store 为这些应用提供新版本了吗?

解决方案

技术背景

技术上,一个应用是通过哪个商店、Web 浏览器、其他应用或使用 ADB 安装的,并不会影响应用本身的属性。如果一个应用同时在两个商店(例如:Google Play Store 和 Galaxy 店)发布具有相同签名版本,用户可以正常切换商店查看更新。

依赖冲突

问题可能源于不同商店对同一个应用发布的不同版本的 versionCode 约束。
– Android 使用内部的 versionCode 来避免用户卸载后重新安装较旧版本的可能性。
– 如果两个商店的不同变体拥有不同的 versionCode,且一个变体的 versionCode 小于另一个,则将无法从较小版本直接升级到较大版本。
例如:一种应用变体版本号为0x2000234,另一种的应用变体具有0x1000234。尽管两者在用户看来展示同样的版本号,但内部的 versionCode 是完全不同的。

处理建议

  1. 区分不同商店更新:大多数时候,选择哪个商店安装应用不会影响后续应用更新源。如果只从 Google Play Store 下载的应用提示可以在 Galaxy 店获取更新,则这些更新仍会来源于 Play Store 。
  2. 版本冲突检查:可以提前在两个不同的商店中安装应用的测试版本(使用 adb 安装或通过开发者提供的 URL),来确认是否有版本之间的冲突。确保应用更新不会因版本号不正确引起的问题。
  3. 联系开发者支持:如果开发者对于应用程序的不同变体进行了明确标记,并希望用户切换商店以获取最新更新,可能会提供专门的链接或者引导。

综上所述,在不同商店下载同一款应用不应导致更新来源发生变化。但在某些情况下,尤其是不同的 versionCode 设置下,可能会遇到更新的依赖性问题。确保始终监控主要的应用版本来源和开发者发布的任何明确指示是很重要的。如果有疑问,可以联系开发者或官方客服进一步了解具体情况。

正文完