以编程方式添加更新到Android应用程序以在用户联机时更新应用程序

时间:2017-01-27 09:20:06

标签: java android

我有一个Android应用程序,该功能可能会不时更新。这些功能被硬编码到应用程序中,我觉得如果有100个用户下载应用程序,当应用程序的某些功能更新并重新上传到游戏商店时,那些先前安装了应用程序的用户可能已经输掉了一些最新功能上传到游戏商店。

为了解决这个问题,我按照网址中的描述达到了这个解决方案,但还是在onCreate方法中实现了

Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://details?id=com.package.name"));
startActivity(intent);

Is there a way to automatically update application on Android?

如果这种方法可以解决我的疑虑,我希望得到适当的指导。请帮助!

2 个答案:

答案 0 :(得分:0)

您正在寻找的解决方案是 REACT NATIVE APPS。 React Native应用程序允许您更改和添加许多功能,而无需将应用程序上传到Play商店。

https://facebook.github.io/react-native/showcase.html

<强>更新

但是如果你想使用android原生开发那么。 在您的后端创建一个API,它会在响应中返回您应用的最新版本,如:

{
  appVersion: "4.2.1"
}

然后在第一个活动的Android应用程序中调用此API并将应用程序的版本与API版本进行比较。

String currentVersion = BuildConfig.VERSION_NAME;

如果它不匹配,则向用户显示一条消息,以便从Play商店更新应用,并提供一个按钮,该按钮将重定向到Google Play商店中的应用链接。

每当您在Play商店中更新应用时,请更改API中的版本。

您还可以维护主要和次要更新的版本。

{
majorVersion:4
minorVersion:1
patchVersion:2
}

然后在你的应用中:

String majorVersion = android.optString("majorVersion");
String minorVersion = android.optString("minorVersion");
String patchVersion = android.optString("patchVersion");
String[] ab = BuildConfig.VERSION_NAME.split("\\.", 3);
String appMajorVersion = ab[0];
String appMinorVersion = ab[1];

并使用if else检查是否需要强制更新。

答案 1 :(得分:0)

如果您使用了网络服务,则将您的应用版本传递给网络团队。 然后获得第一个Web服务调用app的一个标志是旧的或不是 并且您可以在应用程序打开时手动设置对话框。然后将appp重定向到playsotre。