안녕하세요.

다른 app의 sharedPrefrence 참조하는 방법이 궁금하여 글 올립니다.

 

현재 제가 구현한 소스는 다음과 같습니다.

1번 App에서 생성한 sharedPreference의 값을 2번 App에서 참조하려고 하는 상태입니다.

 

1번 App(패키지명 : android.com.app.test1)

public static int getValue(Context context) {  
   SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(context);

   int value = shared .getInt("SETTING", 1);

  Log(context, " 1 setting value : " + value);

   return metric;
}

 

2번 App(패키지명 : android.com.app.test2)

private static SharedPreferences getValueSharedPreferences(Context context){
  Context testContext;
  try {
   testContext = context.createPackageContext("android.com.app.test1", 0);
  } catch (NameNotFoundException e) {
   LOG.e("getWeatherSharedPreferences is null!!!!!!!");
   return null;
  }
  
  SharedPreferences sharedPreferences = testContext.getSharedPreferences("android.com.app.test1_preferences",  Context.MODE_WORLD_READABLE);

 

sharedPreferences.getInt("SETTING", 100);

Log(context, " 2 setting value : " + value);

 }

 

1번 App에서 찍은 로그는 이렇습니다.

 1 setting value : 0

 

그런데 2번 App에서 찍은 로그는...

2 setting value : 100

 

0을 기대했으나, default 값인 100이 찍히네요.

어디가 문제인가요?

고수님들 답변 부탁드립니다.