Skip to content

Most visited

Recently visited

navigation

키-값 세트 저장

저장하고자 하는 키-값 컬렉션이 비교적 작은 경우, SharedPreferences API를 사용합니다. SharedPreferences 객체는 키-값 쌍을 포함하는 파일을 가리키며, 키-값 쌍을 읽고 쓸 수 있는 간단한 메서드를 제공합니다. 각 SharedPreferences 파일은 프레임워크로 관리되며, 전용 또는 공유일 수 있습니다.

이 과정에서는 SharedPreferences API를 사용하여 단순한 값을 저장하고 가져오는 방법을 보여줍니다.

참고: SharedPreferences API는 키-값 쌍을 읽고 쓰는 용도로만 사용됩니다. 또한, (앱 설정을 저장하는 데 대한 구현으로 SharedPreferences를 사용하기는 하지만) 앱 설정을 위한 사용자 인터페이스 빌드를 지원하는 Preference API와 혼동해서는 안 됩니다. Preference API 사용에 대한 자세한 내용은 설정 가이드를 참조하세요.

SharedPreferences에 대한 핸들 가져오기

다음 두 메서드 중 하나를 호출하여 새로운 공유 기본 설정 파일을 생성하거나 기존 파일에 액세스할 수 있습니다.

예를 들어, 다음 코드는 Fragment 내부에서 실행됩니다. 이 코드는 리소스 문자열 R.string.preference_file_key에 의해 식별되는 공유 기본 설정 파일에 액세스하며, 본인의 앱만 파일에 액세스할 수 있도록 전용 모드에서 파일을 엽니다.

Context context = getActivity();
SharedPreferences sharedPref = context.getSharedPreferences(
        getString(R.string.preference_file_key), Context.MODE_PRIVATE);

공유 기본 설정 파일의 이름을 지정할 때는 "com.example.myapp.PREFERENCE_FILE_KEY"와 같이 앱에 대한 고유 식별 이름을 사용해야 합니다.

또는, 액티비티에 공유 기본 설정 파일만 필요할 경우 getPreferences() 메서드를 사용할 수 있습니다.

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);

주의: MODE_WORLD_READABLE 또는 MODE_WORLD_WRITEABLE을 사용하여 공유 기본 설정 파일을 생성하는 경우, 파일 식별자를 인식하는 기타 모든 앱이 데이터에 액세스할 수 있습니다.

SharedPreferences에 쓰기

공유 기본 설정 파일에 데이터를 쓰려면 SharedPreferences에서 edit()를 호출하여 SharedPreferences.Editor를 생성해야 합니다.

putInt()putString()과 같은 메서드를 사용하여 쓰고자 하는 키와 값을 전달합니다. 그런 다음, commit()을 호출하여 변경 내용을 저장합니다. 예:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score), newHighScore);
editor.commit();

SharedPreferences에서 읽어오기

공유 기본 설정 파일에서 값을 검색하려면 원하는 값에 대한 키를 제공하고 선택 사항으로 키가 없을 경우 반환할 기본값을 제공하여 getInt()getString()과 같은 메서드를 호출해야 합니다. 예:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = getResources().getInteger(R.string.saved_high_score_default);
long highScore = sharedPref.getInt(getString(R.string.saved_high_score), defaultValue);
This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

WeChat에서 Google Developers 팔로우하기

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience. (Dec 2017 Android Platform & Tools Survey)