안드로이드 데이터 저장 예제

Android는 콘텐츠 공급자를 통해 개인 데이터도 다른 응용 프로그램에 노출할 수 있는 방법을 제공합니다. 콘텐츠 공급자는 응용 프로그램 데이터에 대한 읽기/쓰기 액세스를 노출하는 선택적 구성 요소로, 적용하려는 제한 사항에 따라 적용됩니다. 콘텐츠 공급자 사용에 대한 자세한 내용은 콘텐츠 공급자 설명서를 참조하세요. 데이터를 유지하려는 경우가 많지만 공유 기본 설정이 너무 제한적입니다. Java 개체 또는 이미지를 유지하도록 할 수 있습니다. 또는 친숙한 파일 시스템 계층 구조를 사용하여 데이터를 논리적으로 유지해야 합니다. 내부 저장소 데이터 저장소 방법은 특히 장치 파일 시스템에 데이터를 저장해야 하지만 다른 앱(사용자도)이 이 데이터를 읽지 않으려는 경우에 적합합니다. 내부 저장소 방법을 사용하여 저장된 데이터는 응용 프로그램에 완전히 비공개이며 앱이 제거되면 장치에서 삭제됩니다. 오늘 우리는 안드로이드 내부 스토리지로 볼 것이다. Android는 데이터를 저장하는 몇 가지 구조화 된 방법을 제공합니다.

여기에는 내부 저장소가 다른 파일 시스템에 저장하는 것과 유사합니다. File 개체에 대한 참조를 얻을 수 있으며 FileOutputStream을 사용하여 거의 모든 형식의 데이터를 저장할 수 있습니다. 내부 저장소의 고유성은 단순히 콘텐츠가 앱에서만 액세스할 수 있다는 것입니다. 내부 파일 디렉터리에 액세스하려면 Context getFilesDir() 메서드를 사용합니다. 이 내부 파일 디렉토리 내에서 디렉터리를 만들거나 액세스하려면 getDir(디렉터리이름, Context.MODE_XXX) 메서드를 사용합니다. getDir() 메서드는 지정된 디렉터리를 나타내는 File 개체에 대한 참조를 반환하여 존재하지 않는 경우 먼저 만듭니다. 키-값 쌍에 기본 데이터를 저장 하려면이 사용 해야 합니다. 부울, 플로트, int, 긴 또는 문자열 중 하나가 될 수 있는 해당 키에 대한 해당 값과 문자열이어야 하는 키가 있습니다. 내부적으로 Android 플랫폼은 앱의 공유 기본 설정을 개인 디렉토리에 xml 파일에 저장합니다. 앱에 여러 공유 기본 설정 파일이 있을 수 있습니다. 이상적으로는 공유 기본 설정을 사용하여 응용 프로그램 기본 설정을 저장하는 것이 좋습니다. 마지막으로 Android는 데이터 저장을 위해 SQLite 데이터베이스를 사용하는 앱에 대한 지원을 제공합니다.

생성된 데이터베이스는 앱에 따라 다르며 앱 내의 모든 클래스에서 사용할 수 있지만 외부 응용 프로그램에서는 사용할 수 없습니다. 앱의 데이터 저장에 SQLite 데이터베이스를 사용하기로 결정하기 전에 SQL 에 대한 지식이 있어야 합니다. 모든 Android 장치에는 “내부” 및 “외부” 저장소의 두 가지 파일 저장 영역이 있습니다. 이러한 이름은 대부분의 장치가 내장 된 비 휘발성 메모리 (내부 스토리지)와 마이크로 SD 카드 (외부 저장소)와 같은 이동식 저장 매체를 제공 했을 때 Android의 초기에서 왔습니다. 이제 많은 장치가 영구 저장 공간을 별도의 “내부” 파티션과 “외부” 파티션으로 나눕니다. 따라서 이동식 저장소 매체가 없어도 이러한 두 저장소 공간은 항상 존재하며 외부 저장소를 제거할 수 있는지 여부에 관계없이 API 동작은 동일합니다. 반대로 원하는 경우 사용자가 앱에서 저장한 파일 및 데이터를 보도록 할 수 있는 다른 경우가 있습니다.