我有来自服务的这段代码。
prefs = getSharedPreferences(homeConfigure.APP_PREF_NAME, Context.MODE_PRIVATE);
city = prefs.getString(CITY + appWidgetId,"nothing");
它返回存储的正确值。但是后来通过服务类中的AlarmManager调用服务会返回值“nothing”。
可能出错?
我将它们保存在homeConfigure活动中,如下所示:
city = cityText.getText().toString();
Editor editor = prefs.edit();
editor.putString(CITY + appWidgetId,city);
editor.commit();
,当首次添加小部件时,appwidget是从配置类的onCreate()中的intent获取的:
appWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID,AppWidgetManager.INVALID_APPWIDGET_ID);
答案 0 :(得分:0)
尝试使用getDefaultPreferences(context)。