Android如何保存首选项和应用内账单
我有一个IAB,当购买成功时,它调用以下代码:Android如何保存首选项和应用内账单,android,in-app-purchase,sharedpreferences,Android,In App Purchase,Sharedpreferences,我有一个IAB,当购买成功时,它调用以下代码: private void updateInterface() { if (mIsPremium) { displayAd(false); savePreferences(null); } else { displayAd(true); } } 我的首选项是: private void savePreferences(String String) { S
private void updateInterface() {
if (mIsPremium) {
displayAd(false);
savePreferences(null);
} else {
displayAd(true);
}
}
我的首选项是:
private void savePreferences(String String) {
SharedPreferences settings = getSharedPreferences(
Constants.PREFERENCES_FILE, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putString(Constants.ANTI_ADS_KEY, "prde");
editor.commit();
editor.clear();
}
public static boolean hasValidKey() {
SharedPreferences settings = CustomApplication.getAppContext()
.getSharedPreferences(Constants.PREFERENCES_FILE,
Context.MODE_PRIVATE);
String key = settings.getString(Constants.ANTI_ADS_KEY,
Constants.ANTI_ADS_VALUE);
if (key != null
&& ((key.trim().startsWith("pR+") && key.trim()
.endsWith("de@p")) || (key.trim().startsWith("pr") && key
.trim().endsWith("de")))) {
return true;
}
return false;
}
在UTIL中,我有以下内容:
private void savePreferences(String String) {
SharedPreferences settings = getSharedPreferences(
Constants.PREFERENCES_FILE, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putString(Constants.ANTI_ADS_KEY, "prde");
editor.commit();
editor.clear();
}
public static boolean hasValidKey() {
SharedPreferences settings = CustomApplication.getAppContext()
.getSharedPreferences(Constants.PREFERENCES_FILE,
Context.MODE_PRIVATE);
String key = settings.getString(Constants.ANTI_ADS_KEY,
Constants.ANTI_ADS_VALUE);
if (key != null
&& ((key.trim().startsWith("pR+") && key.trim()
.endsWith("de@p")) || (key.trim().startsWith("pr") && key
.trim().endsWith("de")))) {
return true;
}
return false;
}
那么,上面的所有代码对您来说都是正确的吗?您不应该将其称为:
editor.clear();
它将清除所有已提交的更改。此问题没有明确的方向。换句话来说,“这对你来说是正确的”。