Docs Menu
Docs Home
/ /
Atlas Device SDK
/ / /

Realm 삭제 - Kotlin SDK

이 페이지의 내용

  • 개요
  • 마이그레이션을 피하기 위해 Realm 파일 삭제하기

클라이언트 재설정 시나리오 와 같은 일부 상황에서는 영역 파일 과 해당 보조 파일을 삭제 해야 할 수 있습니다. 이는 개발 중에 환경을 빠르게 재설정하는 데 유용한 경우가 많습니다. 그러나 앱 을 실행 영역 인스턴스가 아직 열려 있을 때 이 작업을 수행하면 데이터가 손상되거나 Atlas Device Sync 가 중단될 수 있습니다.

데이터 손실과 Realm Mobile Sync 중단을 방지하려면 영역의 모든 인스턴스가 닫힐 때 이러한 파일을 삭제할 수 있습니다. Realm 파일을 삭제하기 전에 영역의 동기화되지 않은 모든 데이터가 손실되므로 중요한 객체를 백업해야 합니다.

앱 이 실행 동안 Realm 파일 을 안전하게 삭제 하려면 Realm .deleteRealm( ) 메서드. 다음 코드는 이를 보여줍니다.

// You must close a realm before deleting it
realm.close()
// Delete the realm
Realm.deleteRealm(config)

앱을 개발하면서 빠르게 반복하는 경우 스키마를 변경할 때 Realm 파일을 마이그레이션하는 대신 삭제하는 것이 좋습니다. Realm 구성은 이 경우에 도움이 되는 deleteRealmIfMigrationNeeded 매개변수를 제공합니다.

deleteRealmIfMigrationNeeded 을(를) 사용하면 마이그레이션이 필요한 경우 Realm은 영역 파일을 삭제합니다. 그런 다음 개발 또는 테스트 데이터에 대한 마이그레이션 블록을 작성하는 대신 새 스키마와 일치하는 객체를 만들 수 있습니다.

val config = RealmConfiguration.Builder(
schema = setOf(Frog::class)
)
.deleteRealmIfMigrationNeeded()
.build()
val realm = Realm.open(config)
Log.v("Successfully opened realm: ${realm.configuration.name}")

중요

프로덕션 환경에서는 deleteRealmIFMigrationNeded를 사용하지 마세요.

이 플래그를 true로 설정한 상태에서는 앱을 프로덕션에 배포하지 마세요.

돌아가기

Realm 파일 크기 줄이기