EV2*_*221 0 android android-version android-update-app
由于自身的教育原因,我的Android应用存在问题。
是否有现成的解决方案来检测该应用程序现在已从版本x更新为y?因为我只想在以前以特殊版本安装应用程序时才迁移一些数据。
谢谢。
最简单的方法是将应用程序的最新已知版本存储在SharedPreferences中,并检查该应用程序何时启动。
您可以使用来获取应用程序的当前版本代码BuildConfig.VERSION_CODE。
例如:
@Override
public void onStart() {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
int lastKnownVersion = prefs.getInt("lastKnownAppVersion", 0);
if (lastKnownVersion < BuildConfig.VERSION_CODE) {
// Your app has been updated
prefs.edit().putInt("lastKnownAppVersion", BuildConfig.VERSION_CODE);
}
}
Run Code Online (Sandbox Code Playgroud)
注册BroadcastReceiver以侦听ACTION_MY_PACKAGE_REPLACED意图将告诉您何时更换(即更新了)您的软件包,但是这不会告诉您以前安装了哪个版本。