wait 초기 원격 데이터 의 경우
이 옵션을 설정하면 Realm이 처음 열릴 때 서버에서 알려진 모든 변경 사항을 다운로드하게 됩니다. 모든 데이터가 다운로드될 때까지 Realm이 열리지 않습니다. 즉, 장치가 오프라인 상태이면 Realm이 열리지 않습니다.
모든 변경 사항을 다운로드하는 것은 시간이 오래 걸리는 작업일 수 있으므로 UI 스레드를 차단할 수 있으므로 이 설정이 활성화된 Realms는 백그라운드 스레드에서만 열어야 합니다.
이 검사는 초기 구독이 rerunOnOpen = true
구성된 경우를 제외하고 Realm 이 처음 생성될 때만 적용됩니다. 이 경우 Realm이 열릴 때마다 서버 데이터가 다운로드됩니다.
서버 데이터를 다운로드해야 하는 조건부인 경우, SyncSession.downloadAllServerChanges 를 통해 제어할 수 있습니다. 예를 들면 다음과 같습니다.
val user = loginUser()
val config = SyncConfiguration.Builder(user, schema)
.initialSubscriptions { realm ->
add(realm.query<City>())
}
.build()
val realm = Realm.open(config)
if (downloadData) {
realm.syncSession.downloadAllServerChanges(timeout = 30.seconds)
}
클립보드에 복사된 콘텐츠
매개변수
타임아웃
Realm을 열 때 io.realm.kotlin.mongodb.Exceptions.DownloadingRealmTimeOutException 이 발생하기 전에 다운로드가 완료될 때까지 기다리는 시간입니다.