将测试应用程序导向市场网址后,没有Play商店更新

时间:2015-05-06 19:52:20

标签: 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)));
}

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

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

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

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

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

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

1 个答案:

答案 0 :(得分:1)

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

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

话虽如此,您在使用应用程序显示进入应用程序商店的事实是您的代码工作的举证责任。剩下的部分是谷歌的问题。因此,您应该感到安全,因为您的代码正常运行,只要Play商店已准备好供人们更新,您就可以了。

我已将此功能实施到两个独立的应用程序中,并且仅在初始发布之前进行了测试,即用户被正确引导到应用商店中。我通常会等待24个小时以上更新服务器上的最低版本,只要用户使用旧版本进行缓存。

相关问题