[Android Developers Training] 24. 키 쌍 저장

6785 단어 developer
주의: 본 고 는 Google 공식 Android Developers Training 문 서 를 번역 한 것 으로 번역 자 는 기술 이 보통 이 며 안 드 로 이 드 를 좋아 하기 때문에 번역 할 생각 이 생 겼 습 니 다. 순 전 히 개인 적 인 취미 입 니 다.
링크: http://developer.android.com/training/basics/data-storage/shared-preferences.html
데이터 세트 에 상대 적 으로 작은 키 값 을 저장 하고 싶 은 경우 SharedPreferences API 를 사용 해 야 합 니 다.하나의 SharedPreferences 대상 은 키 값 이 맞 는 파일 을 가리 키 는 동시에 쓰기 와 읽 기 를 지원 하 는 간단 한 방법 도 제공 합 니 다.각 SharedPreferences 파일 은 프레임 워 크 에 의 해 관리 되 고 개인 적 인 것 인지 공유 하 는 것 인지 규정 할 수 있다.
이 수업 은 간단 한 데 이 터 를 저장 하고 복구 하기 위해 SharedPreferences API 를 사용 하 는 방법 을 소개 한다.
Note:
SharedPreferences 의 API 는 키 쌍 을 읽 고 쓸 수 있 습 니 다. Preference 의 API 와 헷 갈 리 지 마 십시오. 후 자 는 응용 설정 에 따라 UI 를 구축 하 는 데 사 용 됩 니 다. SharedPreferences 사용 Preference 사용 Settings 에 대한 정 보 를 더 많이 읽 습 니 다. getSharedPreferences()
 
1). SharedPreferences 핸들 가 져 오기
새 shared preferences 파일 을 만 들 거나 존재 하 는 파일 을 얻 을 수 있 습 니 다.
  • Context: 이 방법 을 사용 하면 이름 으로 표 시 된 shared preferences 파일 이 여러 개 필요 하 다 면 이름 은 방법의 첫 번 째 매개 변수 입 니 다.너 는 네가 응용 하 는 모든 getPreferences() 에서 이 방법 을 호출 할 수 있다.
  • Activity: 이 방법 을 사용 하면 이 activity 에서 shared preferences 파일 만 필요 합 니 다.이 activity 에 속 하 는 기본 shared preferences 파일 을 얻 을 수 있 기 때문에 이름 을 제공 할 필요 가 없습니다.

  • 예 를 들 어 아래 코드 는 fragment 에서 실 행 됩 니 다.shared preferences 파일 을 가 져 옵 니 다. 이 파일 의 이름 은 자원 문자열 인 'R. string. preference file key' 에서 지정 하고 개인 모드 로 열 면 이 파일 은 응용 프로그램 에 만 접근 할 수 있 습 니 다.
    Context context = getActivity();
    
    SharedPreferences sharedPref = context.getSharedPreferences(
    
            getString(R.string.preference_file_key), Context.MODE_PRIVATE);

    shared preferences 파일 의 이름 을 지 을 때 "com. example. myapp. PREFERENCE FILE KEY" 와 같은 고유 한 이름 을 사용 해 야 합 니 다.
    물론 activity 에서 shared preferences 파일 만 사용 하려 면 getPreferences() 방법 을 사용 할 수 있 습 니 다.
    SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);

    Caution:
    MODE_WORLD_READABLE 또는 MODE_WORLD_WRITEABLE 를 통 해 shared preferences 파일 을 만 들 었 다 면 이 파일 이름 을 아 는 다른 응용 프로그램 에서 데 이 터 를 얻 을 수 있 습 니 다.
     
    2). SharedPreferences 쓰기
    shared preferences 파일 을 쓰기 위해 서 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();

     
    3). SharedPreferences 읽 기
    shared preferences 파일 에서 데 이 터 를 얻 기 위해 응답 하 는 방법 을 호출 합 니 다. 예 를 들 어 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);

    좋은 웹페이지 즐겨찾기