gpt4 book ai didi

android - 更新时清除应用程序数据

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:34:06 27 4
gpt4 key购买 nike

当用户更新来自 Google Play 商店或任何其他来源的应用程序。这是因为我不需要旧应用程序中的任何现有数据,因为与旧应用程序相比,我已经更改了新应用程序中的所有内容。

我想在应用程序启动时实现版本检查,但我找不到获取应用程序的previous versionCodeversionName 。我想出清除数据的唯一方法是在发布应用程序时检查 lastUpdateTime。但它并不可靠,因为用户可以通过其他方式或来源获取该应用程序(例如与 friend 分享,或者如果用户有旧应用程序的备份)。

有什么建议吗?

最佳答案

您可以将versionCode存储在SharedPreferences中并与当前的versionCode进行比较

要清除所有数据,您只需清除 SharedPreferences、本地数据库和您存储的所有本地文件的所有值。

public void clearData()
{
try {
PackageInfo pInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
int mCurrentVersion = pInfo.versionCode;
SharedPreferences mSharedPreferences = getSharedPreferences("app_name", Context.MODE_PRIVATE);
SharedPreferences.Editor mEditor = mSharedPreferences.edit();
mEditor.apply();
int last_version = mSharedPreferences.getInt("last_version", -1);
if(last_version != mCurrentVersion)
{
//clear all your data like database, share preference, local file
//Note : Don't delete last_version value in share preference
}
mEditor.putInt("last_version", mCurrentVersion);
mEditor.commit();
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
}

注意:不要删除共享偏好中的last_version值。

关于android - 更新时清除应用程序数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48520051/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com