【发布时间】:2012-05-27 09:15:41
【问题描述】:
我的应用出现了奇怪的问题。 我已经设置了一个 SharedPreference,像这样
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(this);
flag = prefs.getBoolean("handle_calls", false);
if (flag) {
SharedPreferences.Editor editor = prefs.edit();
editor.clear();
editor.putBoolean("checkFlag", true);
editor.commit();
}
几天前它工作正常,但现在这段代码工作正常,但是当我尝试在我的 SmsReceiver 类中读取这些首选项时 SharedPreferences 没有读取这些值并且读取了默认值(假)......有时它工作,大多数时候它根本不起作用!
以下是我阅读SharedPreferences的方式@
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
SmsManager sms = SmsManager.getDefault();
//flag = prefs.getBoolean("handle_calls", false);
checkFlag = prefs.getBoolean("checkFlag", false);
checkDecisionFlag = prefs.getBoolean("checkDecisionFlag", false);
这个checkDecisionFlag 工作正常,但 checkFlag 采用默认值。
真的很生气!请帮忙!
【问题讨论】:
标签: java android xml sharedpreferences