SharedPreference로 다른 app의 Preferences값을 참조하고 싶을 때..
.getSharedPreferences의 두번째 파라미터인 mode값에 MODE_MULTI_PROCESS로 설정 해 주면
같은 preference의 값을 참조할 수 있다고 봤는데 다른 app에서는 값이 반환되지 않네요
//----- Application 1
insertPFBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences mPref = mContext.getSharedPreferences("HI_PREF", mContext.MODE_MULTI_PROCESS);
Editor editor = mPref.edit();
editor.putString("ID", "hello1");
editor.putString("PWD", "hhh1");
editor.commit();
// app1에서 데이터를 입력하고 commit();
}
});
selectPFBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences mPref = mContext.getSharedPreferences("HI_PREF", mContext.MODE_MULTI_PROCESS);
Toast.makeText(getApplicationContext(), "ID : " + mPref.getString("ID", "") + "\n" + "PWD : " + mPref.getString("PWD", ""), Toast.LENGTH_LONG).show
// app1에서 입력한 데이터가 반환됨;
}
});
//----- Application 2
selectPFBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences mPref = mContext.getSharedPreferences("HI_PREF", mContext.MODE_MULTI_PROCESS);
Toast.makeText(getApplicationContext(), "ID : " + mPref.getString("ID", "") + "\n" + "PWD : " + mPref.getString("PWD", ""), Toast.LENGTH_LONG).show();
// app1에서 입력한 데이터가 반환되지 않고 ""가 반환됨.
}
});
API 버전은 17입니다