developer tip

Android에서 "애플리케이션 설정"을 수행하는 가장 좋은 방법은 무엇입니까?

copycodes 2020. 8. 13. 23:33
반응형

Android에서 "애플리케이션 설정"을 수행하는 가장 좋은 방법은 무엇입니까? [닫은]


Android 애플리케이션에 대한 일부 애플리케이션 설정 (예 : API의 URL 및 테스트를위한 일부 설정)을 저장하고 싶습니다.

저는 주로 .NET 개발자로 일 app.config하기 때문에이 목적으로 파일을 사용하는 데 익숙합니다 . Android에서이를 수행하는 좋은 방법은 무엇입니까?


많은 응용 프로그램은 특정 응용 프로그램 또는 활동의 설정에서 사용자 기본 설정을 캡처하는 방법을 제공 할 수 있습니다. 이를 지원하기 위해 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의 데이터 저장소 게시물을 확인하세요 .

참고 URL : https://stackoverflow.com/questions/3570690/whats-the-best-way-to-do-application-settings-in-android

반응형