我正在尝试在我的应用程序中显示更新提醒,如果我在我的google play app
中进行了更新,在this之后作为参考我已经设法从Play商店获得响应。但是从游戏商店看到更新的响应是这样的。
We're sorry, the requested URL was not found on this server
我的问题是我在应用程序中如何知道Google Play商店中是否有更新?
并且google play不支持apk中的私有更新链接,那么还有其他方法可以从Playstore获取应用内的更新。 提前谢谢。
答案 0 :(得分:1)
根据您进行更新的频率,您可以在服务器上放置一个页面,该页面为您提供最新版本,如果它与当前版本不匹配,提示用户打算在您的应用程序中打开游戏商店。
基本上,ask the server最新版本是什么(你需要将它包装在try / catch中并向清单添加互联网权限):
URL url = new URL("mysite.com/thefile.txt");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String str;
while ((str = in.readLine()) != null) {
// str is one line of text; readLine() strips the newline character(s)
}
in.close();
来自服务器的响应可能类似于{"latestVersion": "1.004"}
,您可以通过以下方式检查当前安装的版本:
PackageInfo pInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
version = pInfo.versionName;
比较它们,并使用对话框或其他任何内容提示用户,然后使用找到的代码here启动Play商店:
final String appPackageName = getPackageName(); // getPackageName() from Context or Activity object
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("http://play.google.com/store/apps/details?id=" + appPackageName)));
}
为了澄清,您将更新服务器手动中的版本,以便根据您的更新频率以及忘记内容的频率,可能是也可能不是您的选项: p