[英]How to retrieve a shared preferences value in static method
這是我的共享首選項方法
@Override
protected void onStart() {
super.onStart();
SharedPreferences.Editor editor = sharedpreferences.edit();
editor.putInt("APPSTATUS", 1);
editor.putLong("eventId", eventMO.getEventId());
editor.commit();
Log.i("App", "start");
AppActivityStatus.setActivityStarted();
AppActivityStatus.setActivityContext(context);
}
這里的eventid值存儲在共享首選項中。 我需要在以下靜態方法中獲取此event_id值以比較event_id
public static void messageHandler(final Context context ,final MessageMO messageMo) {
UIHandler = new Handler(Looper.getMainLooper());
UIHandler.post(new Runnable() {
public void run() {
// SharedPreferences sharedPreferences1;
Log.e("messageHandler", messageMo.getEventTitle());
ChatMO chatMO = new ChatMO();
chatMO.setMessage(messageMo.getMessage());
chatMO.setSelf(0);
chatMO.setFromName(messageMo.getfromUserName());
chatMO.setDate(messageMo.getDate());
chatMO.setEvent_id(messageMo.getEventId());
Log.e("handler", "eventid" + chatMO.getEvent_id());
Log.e("handler", "date" + chatMO.getDate());
listChatMessageObjectses.add(chatMO);
Log.e("handler", "listmessage" + listChatMessageObjectses);
}
});
}
您可以使用下面的代碼片段讀取這些值。 您需要上下文來獲取可在本地存儲在同一類中的首選項實例。
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
int appStatus = pref.getInt("APPSTATUS", 1);
long eventId = pref.getLong("eventId", 0);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.