我有兩個應用程序讓我們假設「AppOne」和「AppTwo」,在AppOne中我有一些值存儲在它的共享Prefrence中,比如「String」name「,我想從」appTwo「得到這個值。我該怎麼辦AppOne Sahred偏好的該如何從android中其他應用的其他應用的共享偏好中獲取價值?
代碼: -
private SharedPreferences m_Preference;
private SharedPreferences.Editor m_Editor;
private final String MY_PREF="AppData";
public PreferenceHelper(Context context){
this.m_Preference = context.getSharedPreferences(MY_PREF,Context.MODE_PRIVATE);
this.m_Editor = m_Preference.edit();
}
/*Saving String value......*/
public void saveStringPreference(String key,String value){
m_Editor.putString(key,value);
m_Editor.apply();
}
public String getStringPreference(String key){
return m_Preference.getString(key,"");
}
/*Saving int value........*/
public void saveIntegerValue(String key,int value){
m_Editor.putInt(key,value);
m_Editor.apply();
}
public int getIntPreference(String key){
return m_Preference.getInt(key,1);
}
而在MainActivity我保存值: -
preferenceHelper =新PreferenceHelper(getApplicationContext());
preferenceHelper.saveStringPreference("Name", "ABC");
實現應用程序的一個部分的API,應用兩個用途:'ContentProvider',遠程'Service'等 – CommonsWare
MODE_PRIVATE表示數據對ap是私有的。檢查此鏈接http://stackoverflow.com/a/6030399/4818247 –
由於您使用Context.MODE_PRIVATE,因此您不應該從其他應用程序訪問此首選項。 –