2012-06-29 3 views
5

공유 설정을 읽는 것에 대한 질문 : thisthis을 읽었습니다. 그러나 SharedPreferences에 액세스하려면 Context가 필요합니다. 컨텍스트없이 SharedPreferences에 액세스하는 방법을 알고 싶습니다. 미리 감사드립니다.컨텍스트없이 SharedPreferences에 액세스

+3

하면 응용 프로그램이 실행되는 동안 사용할 수있는 _Application_Context_가 있습니다 ... –

+0

수 없습니다. 문맥이 필요합니다. – Guardanis

+0

왜 그런 식으로해야하는지에 대해 자세히 설명 할 수 있다면 더 많은 것을 도와 드릴 수 있습니다. – Erol

답변

5

먼저 ApplicationContext (this)를 검색하고 SharedPreferences를 얻기 위해 해당 컨텍스트를 사용하여 문제를 해결합니다. K-ballo에게 감사드립니다.

0

응용 프로그램 클래스 :

import android.app.Application; 
import android.content.Context; 

public class MyApplication extends Application { 

    private static Context mContext; 

    public void onCreate() { 
     super.onCreate(); 
     mContext = getApplicationContext(); 
    } 

    public static Context getAppContext() { 
     return mContext; 
    } 

} 

는 AndroidManifest를에서 응용 프로그램을 선언 :

<application android:name=".MyApplication" 
    ... 
/> 

사용법 : 단순히 _can't_하지만 한

PreferenceManager.getDefaultSharedPreferences(MyApplication.getAppContext()); 
관련 문제