2015-07-03 84 views
1

我提前道歉,這可能聽起來像一個令人難以置信的愚蠢的問題。我今天有點不知所措。因此,我正在完成使用REST API進行身份驗證的Login Verification活動。它工作得很好,但我希望成功將該電子郵件保存在對象中,以便應用程序的其餘部分知道當前在應用程序中的用戶的電子郵件。我做了一個名爲AccountInformation的POJO類,它將保存這封電子郵件(稍後會介紹其他細節),但我對如何在班級以外訪問這些值留下了空白。Android存儲值

例如,我必須在Account Modification類中打電話,要求我在請求中發送電子郵件。但是,電子郵件存儲在我在一個單獨的活動中創建的對象中。如果我沒有道理,我很抱歉,但現在我真的覺得自己很白癡,因爲這應該很簡單。

+4

你爲什麼不使用[SharedPreferences(http://developer.android.com/reference/android/content/SharedPreferences.html)來存儲一個簡單的例子電子郵件? –

+0

使您的對象變爲靜態。存儲您的數據。並在其他課程中訪問它。 SharedPreferences也是另一種選擇。 –

回答

1

你應該將它存儲在像SharedPreferences這樣的持久存儲器中。當應用程序進入後臺時,整個過程可能會在沒有警告的情況下被銷燬。當您返回到應用程序時,POJO的字段將被初始化,或者對POJO本身的引用將爲空,具體取決於它現在被初始化。

是的,這個應該是很簡單。整個Android框架非常複雜且不必要的複雜。

0

共享偏好儲蓄USER_NAME

@Override  
enter code here 

    // Restore preferences 
    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
    String Name = settings.getString("user_name", "unknown"); 
    } 

@Override 

protected void onStop(){ super.onStop(); 


    // We need an Editor object to make preference changes. 
    // All objects are from android.context.Context 
    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
    SharedPreferences.Editor editor = settings.edit(); 
    editor.putString("user_name", mUserName); 

    // Commit the edits! 
    editor.apply();