2016-01-13 98 views
-5

我有應用程序與編碼密鑰,這應該是從應用程序的所有部分可見。它必須具有默認值,並且能夠從其中一項活動中進行更改。我怎樣才能設置這個默認值?爲整個應用程序的SharedPreferences設置默認值

+2

[Android中SharedPrefrences](可能的重複http://stackoverflow.com/questions/18442592/sharedprefrences-in-android) –

+3

嘗試做谷歌之前問stackover流 –

+0

我已經GOOGLE了它,並沒有幫助。 –

回答

0

要保存默認值,您有兩個選項。 1. SharedPreference 2.數據庫。

嘗試用SharedPreference

創建Helper類。

public class SharedPreferencesHelper { 
    private static final String TAG = "SharedPreferencesHelper"; 
    Context context; 
    SharedPreferences sharedPreferences; 
    public SharedPreferencesHelper(Context context) { 
     this.context = context; 
     sharedPreferences = context.getSharedPreferences("loginDetails",Context.MODE_PRIVATE); 
    } 

    /** 
    * To set login details 
    * @param userName : username to set 
    * @param password : password to set 
    */ 
    public void setLoginDetails(String userName, String password) { 
     SharedPreferences.Editor editor = sharedPreferences.edit(); 
     editor.putString("userName",userName); 
     editor.putString("password",password); 
     editor.commit(); 
    } 

    /** 
    * To check and get login details 
    * @param userName : name to validate 
    * @param password : password to validate 
    * @return true : if valid user 
    *   false : if valid password 
    */ 
    public boolean isValidUser(String userName, String password) { 
     // to get username 
     Log.d(TAG, "username = " + sharedPreferences.getString("userName", null)); 
     Log.d(TAG, "password = " + sharedPreferences.getString("password", null)); 

     if(sharedPreferences.getString("userName",null).equals(userName) && sharedPreferences.getString("password",null).equals(password)) 
      return true; 
     else 
      return false; 
    } 

} 

要在應用程序從任何地方訪問(活動/片段)

SharedPreferencesHelper sharedPreferencesHelper = new SharedPreferencesHelper(this); 
sharedPreferencesHelper.setLoginDetails("admin","admin"); 
sharedPreferencesHelper.isValidUser("admin","admin"); 

這可能會幫助你。

0

比方說,這是你的共享偏好:

SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getContext()); 

,你可以這樣設置默認值:

String username = sharedPreferences.getString("USER_NAME", "DEFAULT_VALUE"); 
相關問題