删除所有首选项以进行下一次更新

时间:2015-10-15 11:24:12

标签: android sharedpreferences upgrade

我有一个已经在Play商店的应用程序。我现在正在进行更新。假设我当前的应用版本是1.0.4,并且我发布了1.0.5。所以对于1.0.4的下一个更新,我必须清除偏好。也就是说,如果用户已经拥有1.0.5版本,并且为了将来更新,假设1.0.6优先级不应该清除。有没有办法做到这一点?

准确地说,我必须在1.0.4之后清除偏好首次更新

任何帮助将不胜感激

修改

实际上有一个带有意图过滤器的BroadcastReceiver

<action android:name="android.intent.action.PACKAGE_REPLACED" />

如果我在此广泛演员的onReceiver中获得以前的版本,我可以轻松地清除偏好。

1 个答案:

答案 0 :(得分:1)

我会在发布1.0.5时在您的SharedPreferences中添加版本密钥对,并从此更新中的设备重置所有SharedPreferences。

我想你知道如何完全重置你的SHP:

yourSharedPreferences.edit().clear().apply();

或者,同步案例:

yourSharedPreferences.edit().clear().commit();

在发布到1.0.6时,您可以查找版本密钥对。如果它存在,它应该是1.0.5。相反,您正在从1.0.4更新,您可以像上一步一样重置您的SHP。

我希望这会对你有帮助!