android - 将测试应用定向到市场 url 后没有 Play 商店更新

标签 android google-play

我正在测试我们应用中的版本检查功能。我们的 Android 客户端从我们的服务器查询数据,返回我们允许访问我们服务的最低客户端版本。运行旧版本的用户会被定向到 Play 商店进行更新。

如果用户已过时,我们会使用如下代码将他们定向到 Play 商店:

final String appPackageName = getPackageName();
try {
  startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName)));
} catch (android.content.ActivityNotFoundException anfe) {
  startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + appPackageName)));
}

在我们的应用程序中,过时的客户会被定向到 market://url。这将启动 Play 商店应用并加载我们应用的目标页面。

为了对此进行测试,我创建了一个特殊的“过时”版本的应用程序。在 list 中,我将 versionCode 设置为 1,因此它低于我们在 Play 商店中的当前版本。我还设置了一个错误的低版本名称来触发我们的更新过程。

android:versionCode="1"   
android:versionName="1.0.1"

我构建了该应用程序的签名版本,使用 ADB(不是通过 Play 商店)安装它并进行了测试。

版本检查触发,我被定向到 Play 商店应用程序和我的应用程序页面。但是,Play 商店页面为我提供了卸载打开 应用程序的操作。它没有给我更新应用程序的选项。

为什么 Play 商店不向我提供更新按钮?这是因为我的应用最初不是通过 Play 商店安装的吗?有解决办法吗?

最佳答案

我相信您关于应用最初不是从商店安装的猜测是正确的。为此,我建议使用 Google Play Beta 程序。只要您的设备注册为该特定应用的 Beta 测试人员,它就会收到更新选项(在 3 个多小时后将其上架)。

不幸的是你需要上传两次。一次获取您想要测试的功能,一次测试它是否有效。

也就是说,您进入应用商店并显示您的应用这一事实是证明您的代码有效的责任。剩下的部分是谷歌的问题。因此,您应该对自己的代码正常工作感到放心,只要 Play 商店准备好供人们更新,您就应该没问题。

我已将此功能实现到两个单独的应用程序中,并且仅测试(在初始发布之前)用户是否被正确定向到应用程序商店。我通常会等待 24 小时以上来更新服务器上的最低版本,以防用户缓存了旧版本。

关于android - 将测试应用定向到市场 url 后没有 Play 商店更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30086265/

相关文章:

android - Android 中 UI 设计的更好替代方案

java - 有没有类似Android的资源系统的更小规模的?

android - 我无法在底部显示 LinearLayout 以 ScrollView

android - 下载我的应用程序时出现错误 [DF-AA-33]

java - 如果应用程序使用网络浏览器链接,如何通过 Android TV 的 Google Play 商店资格?

android - sw720dp 和 xlarge 布局文件夹区别

android - 使用 SKZoonLevelConfiguration 启用自动缩放

android - 谷歌商店说准备发布

android - Google Play控制台上的有效安装量急剧下降

android - APK 或 App Bundle 可用于 64 位设备,但它们只有 32 位 native 代码