development

Android에서 데이터를 지속적으로 만들기

big-blog 2020. 12. 11. 19:08
반응형

Android에서 데이터를 지속적으로 만들기


내 응용 프로그램에는 다음 번에 응용 프로그램을 시작할 때 사용할 수있는 몇 가지 응용 프로그램 특정 설정이 있습니다.

즉, 애플리케이션주기의 세션에서 데이터를 사용할 수 있기를 원합니다.

이것은 데이터베이스 (sqlite)를 사용하지 않고 달성 할 수 있습니까?


많은 응용 프로그램은 특정 응용 프로그램 또는 활동의 설정에서 사용자 기본 설정을 캡처하는 방법을 제공 할 수 있습니다. 이를 지원하기 위해 Android는 간단한 API 세트를 제공합니다.

기본 설정은 일반적으로 이름 값 쌍입니다. 애플리케이션의 다양한 활동에서 "공유 기본 설정"으로 저장할 수 있습니다 (현재 프로세스간에 공유 할 수 없음). 또는 특정 활동에 저장해야하는 항목 일 수 있습니다.

  1. 공유 기본 설정 : 공유 기본 설정은 응용 프로그램의 모든 구성 요소 (활동, 서비스 등)에서 사용할 수 있습니다.

  2. 활동 처리 환경 설정 : 이러한 환경 설정은 활동에서만 사용할 수 있으며 애플리케이션의 다른 구성 요소에서 사용할 수 없습니다.

공유 기본 설정 :

공유 된 기본 설정은 클래스 getSharedPreferences메서드의 도움으로 관리됩니다 Context. 기본 설정은 사용자 정의 파일 (1) 또는 기본 파일 (2) 일 수있는 파일에 저장됩니다.

(1) 파일 이름을 지정하려고 할 때 인스턴스를 얻는 방법은 다음과 같습니다.

public static final String PREF_FILE_NAME = "PrefFile";
   SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

MODE_PRIVATE기본 설정의 작동 모드입니다. 기본 모드이며 생성 된 파일은 호출 응용 프로그램에서만 액세스 할 수 있습니다. 지원되는 다른 두 가지 모드는 MODE_WORLD_READABLEMODE_WORLD_WRITEABLE. MODE_WORLD_READABLE다른 응용 프로그램 에서는 생성 된 파일을 읽을 수 있지만 수정할 수는 없습니다. MODE_WORLD_WRITEABLE다른 응용 프로그램의 경우 생성 된 파일에 대한 쓰기 권한도 있습니다.

(2) 권장되는 방법 은 파일 이름을 지정하지 않고 기본 모드로 사용하는 것입니다.

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);

마지막으로 환경 설정 인스턴스가 있으면 다음은 환경 설정 에서 저장된 값검색하는 방법입니다 .

 int storedPreference = preferences.getInt("storedInt", 0);

기본 설정 파일 개체에 저장 하려면 SharedPreference.Editor사용되어야합니다. 클래스 Editor의 중첩 인터페이스입니다 SharedPreference.

SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

Editor는 remove()clear()파일에서 기본 설정 값을 삭제하는 방법도 지원 합니다.

활동 기본 설정 :

공유 기본 설정은 다른 응용 프로그램 구성 요소에서 사용할 수 있습니다. 그러나 다른 구성 요소와 기본 설정을 공유 할 필요가없고 활동 개인 기본 설정을 원하는 경우. getPreferences()활동 방법의 도움으로 그렇게 할 수 있습니다 . getPreference메서드는 getSharedPreferences()기본 설정 파일 이름에 대한 활동 클래스 이름과 함께 메서드를 사용합니다 .

다음은 환경 설정을 가져 오는 코드입니다.

SharedPreferences preferences = getPreferences(MODE_PRIVATE);
int storedPreference = preferences.getInt("storedInt", 0);

값을 저장하는 코드도 공유 환경 설정의 경우와 동일합니다.

SharedPreferences preferences = getPreference(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

데이터베이스에 활동 상태를 저장하는 것과 같은 다른 방법을 사용할 수도 있습니다. 참고 Android에는 android.preference. 패키지는 애플리케이션 기본 설정 UI를 구현하는 클래스를 정의합니다.

더 많은 예제를 보려면 개발자 사이트에서 Android의 데이터 저장소 게시물을 확인하세요 .


공유 기본 설정을 사용해야합니다.

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
prefs.edit().putString("my_pref", "my_value").commit();

그리고 그것을 검색하려면 :

String value = prefs.getString("my_pref", "default Value");

이러한 기본 설정은 지속적이며 기본 설정 활동과도 통합됩니다.

참고 URL : https://stackoverflow.com/questions/3310066/making-data-persistent-in-android

반응형