我正在尝试从数据提供者内部获取数据,因为数据提供者不提供我在函数后创建的上下文:
public String getUN() {
Log.w("app", "getUN");
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
Log.w("app", "getUN2");
return prefs.getString("username", "");
}
我使用了eclipse调试(以及日志消息)来查找错误点:preferencemanager-line
从另一个类槽调用:
PreferencesActivity pa = new PreferencesActivity();
Log.w("app","user:"+pa.getUN());
(再次登录进行调试)
感谢。
编辑:也欢迎提取数据的替代方法, 数据使用android的“原生”方法(通过首选项xml)存储
答案 0 :(得分:0)
使用,getApplicationContext()
答案 1 :(得分:0)
您应该将上下文传递给数据提供者。