클래스 Realm
이 페이지의 내용
- io.realm
- 중첩된 클래스 요약
- 필드 요약
- 메서드 요약
- 상속된 메서드
- 필드 세부 정보
DEFAULT_REALM_NAME
ENCRYPTION_KEY_LENGTH
- 메서드 세부 정보
- addChangeListener
- asFlowable
- compactRealm
- copyFromRealm
- copyToRealm
- copyToRealmOrUpdate
- createAllFromJson
- createEmbeddedObject
- createObject
- createObjectFromJson
- createOrUpdateAllFromJson
- createOrUpdateObjectFromJson
- 삭제
- deleteRealm
- executionTransaction
- executionTransactionAsync
- 동결
- getApplicationContext
- getDefaultConfiguration
- getDefaultInstance
- getDefaultModule
- getGlobalInstanceCount
- getInstance
- getInstanceAsync
- getLocalInstanceCount
- getSchema
- init
- insert
- insertOrUpdate
- isEmpty
- migrateRealm
- 모든 변경 리스너 제거
- removeChangeListener
- removeDefaultConfiguration
- setDefaultConfiguration
- 위치
io.realm
Realm 클래스는 객체 영구 저장소의 저장 및 트랜잭션 관리자입니다. RealmObject의 인스턴스 생성을 담당합니다. Realm 내의 객체는 언제든지 쿼리하고 읽을 수 있습니다. 객체 생성, 수정 및 삭제는 트랜잭션 내부에서 수행되어야 합니다. 자세한 내용은 executionTransaction(Transaction)을참조하세요.
트랜잭션은 여러 스레드의 여러 인스턴스가 전체 ACID를 보장하는 일관된 상태로 동일한 객체에 액세스할 수 있도록 보장합니다.
Realm 인스턴스로 작업을 완료한 후에는 close() 메서드를 호출해야 한다는 점을 기억합니다. 그렇지 않으면 java.lang.OutOfMemoryError 가 발생할 수 있습니다. 네이티브 리소스를 해제할 수 없기 때문입니다.
Realm 인스턴스는 서로 다른 스레드에서 사용할 수 없습니다. 즉, Realm 을 사용하려는 각 스레드에서 인스턴스 를 열어야 합니다. Realm 인스턴스는 참조 카운팅을 사용하여 스레드별로 자동으로 캐시되므로 참조 횟수가 0에 도달하지 않는 한 getInstance(RealmConfiguration) 를 호출하면 캐시된 Realm 이 반환되므로 경량 작업으로 간주해야 합니다.
UI 스레드의 경우 이는 Realm을 열고 닫을 때 onCreate/onDestory 또는 onStart/onStop에서 발생해야 함을 의미합니다.
Realm 인스턴스는 android.os.Handler 를 사용하여 스레드 전반에서 상태를 조정합니다. 메커니즘. 이는 또한 Android.os.Looper 가 없는 스레드의 Realm 인스턴스가 refresh() 를 수동으로 호출하지 않으면 업데이트를 받을 수 없습니다.
Android 활동에서 Realm을 사용하기 위한 표준 패턴은 아래에서 확인할 수 있습니다.
public class RealmApplication extends Application { public void onCreate() { super.onCreate(); // The Realm file will be located in package's "files" directory. RealmConfiguration realmConfig = new RealmConfiguration.Builder(this).build(); Realm.setDefaultConfiguration(realmConfig); } } public class RealmActivity extends Activity { private Realm realm; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.layout_main); realm = Realm.getDefaultInstance(); } protected void onDestroy() { super.onDestroy(); realm.close(); } }
Realm은 문자열 및 최대 16MB를 포함하는 바이트 필드를 지원합니다.
중첩된 클래스 요약
수정자 및 유형 | 클래스 및 설명 |
---|---|
public static interface | |
public abstract static |
필드 요약
수정자 및 유형 | 필드 및 설명 |
---|---|
public static final String | |
public static final int | Realm 데이터를 암호화하는 데 사용되는 암호화 키의 필수 길이입니다. |
메서드 요약
수정자 및 유형 | 메서드 및 설명 |
---|---|
public void | Realm에 변경 리스너를 추가합니다. |
public <any> | asFlowable () 이 Realm의 변경 사항을 모니터링하는 RxJava Flowable을 반환합니다. |
public static boolean | Realm 파일을 압축합니다. |
public E | 이미 저장된 RealmObject 의 관리되지 않는 메모리 내 복사본을 만듭니다. |
public E | 이미 저장된 RealmObject 의 관리되지 않는 메모리 내 복사본을 만듭니다. |
공개 목록 | 이미 저장된 RealmObject의 관리되지 않는 메모리 내 복사본을 만듭니다. |
공개 목록 | 이미 저장된 RealmObject의 관리되지 않는 메모리 내 복사본을 만듭니다. |
공개 목록 | RealmObjects의 collection을 Realm 인스턴스에 복사하고 해당 복사본을 반환합니다. |
public E | RealmObject를 Realm 인스턴스에 복사하고 복사본을 반환합니다. |
공개 목록 | io.realm.annotations.PrimaryKey 로 식별되는 기존 RealmObjects 목록을 업데이트하거나 기존 객체를 찾을 수 없는 경우 새 복사본을 만듭니다. |
public E | 동일한 io.realm.annotations.PrimaryKey 로 식별되는 기존 RealmObject를 업데이트하거나 기존 객체를 찾을 수 없는 경우 새 복사본을 만듭니다. |
public void | JSON 배열의 각 객체에 대한 Realm 객체를 만듭니다. |
public E | 새로운 내장된 객체를 인스턴스화하고 Realm에 추가합니다. |
public E | 이미 설정된 기본 키 값으로 Realm에 새 객체를 인스턴스화하고 추가합니다. |
public E | Realm에 새 객체를 인스턴스화하고 추가합니다. |
public E | JSON 객체의 데이터로 미리 채워진 Realm 객체를 만듭니다. |
public void | 프라이머리 키로 식별되는 기존 객체 목록을 새 JSON 데이터로 업데이트하려고 시도합니다. |
public E | 기본 키로 정의된 기존 객체를 새 JSON 데이터로 업데이트하려고 시도합니다. |
public void | Realm에서 지정된 클래스의 모든 객체를 삭제합니다. |
public static boolean | 파일 시스템에서 주어진 RealmConfiguration 에 지정된 관련 임시 파일과 함께 Realm 파일을 삭제합니다. |
public void | Realm에서 지정된 트랜잭션을 실행합니다. |
public RealmAsyncTask | Realm.Transaction transaction, Realm.Transaction.OnSuccess onSuccess, Realm.Transaction.OnError onError ) executionTransactionAsync (Transaction) 와 유사하지만 OnSuccess 및 OnError 콜백도 허용합니다. |
public RealmAsyncTask | executionTransactionAsync(Transaction) 와 유사하지만 OnError 콜백도 허용합니다. |
public RealmAsyncTask | executionTransactionAsync (Transaction) 과 유사하지만 OnSuccess 콜백 도 허용합니다. |
public RealmAsyncTask | executionTransaction(Transaction)과 유사하지만 작업자 스레드에서 비동기적으로 실행됩니다. |
공개 Realm | freeze () 현재 Realm의 동결된 스냅샷을 반환합니다. |
public static Context | Realm.init(Context) 또는 Realm.init(Context, string) 을 사용하여 을 초기화할 때 사용되는 애플리케이션 컨텍스트를 가져옵니다.Realm |
public static RealmConfiguration | getDefaultInstance() 에 대한 기본값 구성을 반환합니다. |
public static Realm | setDefaultConfiguration(RealmConfiguration) 에 의해 설정된 io.realm.RealmConfiguration 에 의해 정의된 Realm 인스턴스를 반환하는 Realm 정적 생성자 |
기본 Realm 모듈을 반환합니다. | |
public static int | 이 구성을 사용하는 현재 프로세스의 모든 스레드에서 열려 있는 Realm 인스턴스의 현재 수를 반환합니다. |
public static Realm | 제공된 io.realm.RealmConfiguration에 의해 정의된 Realm 인스턴스를 반환하는 Realm 정적 생성자입니다. |
public static RealmAsyncTask | 프로세스에서 RealmConfiguration 당 첫 Realm 인스턴스를 생성하는 작업은 모든 초기화 코드(Realm 설정, 스키마 유효성 검사, 초기 데이터 생성)를 해당 점에서 실행해야 하므로 시간이 걸릴 수 있습니다. |
public static int | 이 메서드를 호출하는 스레드에서 열려 있는 Realm 인스턴스의 현재 수를 반환합니다. |
public RealmSchema | getSchema () 이 Realm의 스키마를 반환합니다. |
public static synchronized void | |
public static synchronized void | Realm 라이브러리를 초기화하고 사용할 준비가 된 기본 구성을 생성합니다. |
public void | 관리되지 않는 RealmObject를 삽입합니다. |
public void | 관리되지 않는 RealmObject의 목록을 삽입합니다. |
public void | 관리되지 않는 RealmObject를 삽입하거나 업데이트합니다. |
public void | 관리되지 않는 RealmObject 목록을 삽입하거나 업데이트합니다. |
공개 부울 | isEmpty () 이 io. 영역. Realm 에는 모든 객체가 포함되어 있습니다. |
public static void | RealmMigration에서 마이그레이션을 수동으로 Atlas Triggers합니다. |
public static void | 지정된 RealmConfiguration과 관련된 마이그레이션을 수동으로 Atlas Triggers합니다. |
public void | 모든 사용자 정의 변경 수신기를 제거합니다. |
public void | 지정된 변경 리스너를 제거합니다. |
public static void | 현재 기본 구성을 제거합니다(있는 경우). |
public static void | io를 설정합니다. 영역.RealmConfiguration 은 getDefaultInstance() 를 호출할 때 사용됩니다. |
공개 RealmQuery | 이 유형의 특정 객체를 쿼리하는 데 사용할 수 있는 유형이 지정된 RealmQuery를 반환합니다. |
상속된 메서드
클래스 java.lang.Object 에서 상속된 메서드 :
getClass
,hashCode
,equals
,clone
,toString
,notify
,notifyAll
,wait
,wait
,wait
,finalize
io.realm.BaseRealm 클래스에서 상속된 메서드:
setAutoRefresh
,isAutoRefresh
,refresh
,isInTransaction
,addListener
,removeListener
,asFlowable
,removeAllListeners
,writeCopyTo
,writeEncryptedCopyTo
,waitForChange
,stopWaitForChange
,beginTransaction
,commitTransaction
,cancelTransaction
,freeze
,isFrozen
,getNumberOfActiveVersions
,checkIfValid
,checkAllowQueriesOnUiThread
,checkAllowWritesOnUiThread
,checkIfInTransaction
,checkIfValidAndInTransaction
,getPath
,getConfiguration
,getVersion
,close
,isClosed
,isEmpty
,getSchema
,getSubscriptions
,deleteAll
,migrateRealm
,finalize
필드 세부 정보
DEFAULT_REALM_NAME
ENCRYPTION_KEY_LENGTH
Realm 데이터를 암호화하는 데 사용되는 암호화 키의 필수 길이입니다.
메서드 세부 정보
addChangeListener
Realm에 변경 리스너를 추가합니다. 이 스레드 또는 다른 스레드에서 변경 사항이 커밋될 때 리스너가 실행됩니다. Realm 인스턴스는 스레드당 싱글톤이며 캐시되므로 Close() 를 호출하는 경우에도 리스너를 수동으로 제거해야 합니다. 그렇지 않으면 메모리 누수의 위험이 있습니다. 매개변수
스로우
|
asFlowable
public <any> asFlowable () | ||||||
---|---|---|---|---|---|---|
이 Realm의 변경 사항을 모니터링하는 RxJava Flowable을 반환합니다. 구독 시 현재 상태를 방출합니다. Realm이 업데이트될 때마다 항목이 계속 방출되며 Realm Flowable에서 방출된 항목은 동결됩니다(freeze() 참조). 즉, 변경할 수 없으며 모든 스레드에서 읽을 수 있습니다. Realm Flowable은 항상 라이브 Realm을 보유한 스레드에서 항목을 방출합니다. 즉, 추가 처리를 수행해야 하는 경우 계산 스케줄러에서 값을 관찰하는 것이 좋습니다.
반환
재정의
|
compactRealm
Realm 파일을 압축합니다. Realm 파일에는 일반적으로 여유 공간/사용하지 않은 공간이 포함되어 있습니다. 이 방법을 사용하면 이 여유 공간이 제거되어 파일 크기가 줄어듭니다. Realm 파일 내의 객체는 변경되지 않습니다. 이 메서드를 호출하기 전에 파일을 닫아야 하며, 그렇지 않으면 The file system should have free space for at least a copy of the Realm file. The Realm file is left untouched if any file operation fails. 매개변수
반환
|
copyFromRealm
이미 저장된 RealmObject 의 관리되지 않는 메모리 내 복사본을 만듭니다. 이는 모든 참고 객체를 정의된 깊이까지 복사하는 딥 카피입니다. 복사된 객체는 모두 Realm에서 분리되며 더 이상 자동으로 업데이트되지 않습니다. 이는 복사된 객체에 다른 관리되는 Realm 객체와 더 이상 일치하지 않는 데이터가 포함되어 있을 수 있음을 의미합니다. *경고*: 복사된 객체에 대한 모든 변경 사항은 copyToRealmOrUpdate(RealmModel, ImportFlag...) 사용하여 Realm 에 다시 병합할 수 있지만 변경된 필드뿐만 아니라 모든 필드가 재정의됩니다. 여기에는 유형 매개변수
매개변수
반환 managed RealmObject 의 메모리 내 분리된 복사본입니다. 스로우
|
이미 저장된 RealmObject 의 관리되지 않는 메모리 내 복사본을 만듭니다. 이는 모든 참고 객체를 복사하는 딥 카피입니다. 복사된 객체는 모두 Realm에서 분리되며 더 이상 자동으로 업데이트되지 않습니다. 이는 복사된 객체에 다른 관리되는 Realm 객체와 더 이상 일치하지 않는 데이터가 포함되어 있을 수 있음을 의미합니다. *경고*: 복사된 객체에 대한 모든 변경 사항은 copyToRealmOrUpdate(RealmModel, ImportFlag...) 사용하여 Realm에 다시 병합할 수 있지만 변경된 필드뿐만 아니라 모든 필드가 재정의됩니다. 여기에는 다른 객체에 대한 참조가 포함되며 다른 스레드에서 변경한 내용을 잠재적으로 재정의할 수 있습니다. 이 동작은 ImportFlag 를 사용하여 수정할 수 있습니다. 유형 매개변수
매개변수
반환 managed RealmObject 의 메모리 내 분리된 복사본입니다. 스로우
|
이미 저장된 RealmObject의 관리되지 않는 메모리 내 복사본을 만듭니다. 이는 참고된 모든 객체를 정의된 깊이까지 복사하는 딥 카피입니다. 복사된 객체는 모두 Realm에서 분리되며 더 이상 자동으로 업데이트되지 않습니다. 이는 복사된 객체에 다른 managed Realm 객체와 더 이상 일치하지 않는 데이터가 포함되어 있을 수 있음을 의미합니다. *경고*: 복사된 객체에 대한 모든 변경 사항은 copyToRealmOrUpdate(Iterable, ImportFlag...) 사용하여 Realm 에 다시 병합할 수 있지만 변경된 필드뿐만 아니라 모든 필드가 재정의됩니다. This includes references to other objects even though they might be 유형 매개변수
매개변수
반환 RealmObject의 메모리 내 분리된 복사본입니다. 스로우
|
이미 저장된 RealmObject의 관리되지 않는 메모리 내 복사본을 만듭니다. 이는 참고된 모든 객체를 복사하는 딥 카피입니다. 복사된 객체는 모두 Realm에서 분리되며 더 이상 자동으로 업데이트되지 않습니다. 이는 복사된 객체에 다른 managed Realm 객체와 더 이상 일치하지 않는 데이터가 포함되어 있을 수 있음을 의미합니다. *경고*: 복사된 객체에 대한 모든 변경 사항은 copyToRealmOrUpdate(RealmModel, ImportFlag...) 사용하여 Realm에 다시 병합할 수 있지만 변경된 필드뿐만 아니라 모든 필드가 재정의됩니다. 여기에는 다른 객체에 대한 참조가 포함되며 다른 스레드에서 변경한 내용을 잠재적으로 재정의할 수 있습니다. 이 동작은 ImportFlag 를 사용하여 수정할 수 있습니다. 유형 매개변수
매개변수
반환 managed RealmObject의 메모리 내 분리된 복사본입니다. 스로우
|
copyToRealm
RealmObjects의 collection을 Realm 인스턴스에 복사하고 해당 복사본을 반환합니다. 원본 RealmObject에 대한 추가 변경 사항은 Realm 사본에 반영되지 않습니다. 이는 참고된 모든 객체가 복사되는 딥 카피입니다. 이 Realm에 이미 있는 객체는 무시됩니다.객체를 복사하면 모든 필드 값이 복사됩니다. 객체 및 하위 객체의 설정되지 않은 필드는 제공하지 않으면 기본값으로 설정됩니다. 매개변수
반환 Realm에서 managed 속성이 있는 변환된 RealmObject의 목록입니다. 스로우
|
RealmObject를 Realm 인스턴스에 복사하고 복사본을 반환합니다. 원본 RealmObject에 대한 추가 변경 사항은 Realm 사본에 반영되지 않습니다. 이는 딥 카피이므로 참고된 모든 객체가 복사됩니다. 이 Realm에 이미 있는 객체는 무시됩니다.객체를 복사하면 모든 필드 값이 복사됩니다. 이 객체 및 하위 객체의 설정되지 않은 필드는 제공하지 않으면 기본값으로 설정됩니다. 매개변수
반환 Realm이 지원하는 속성이 있는 관리되는 RealmObject입니다. 스로우
|
copyToRealmOrUpdate
io.realm.annotations.PrimaryKey 로 식별되는 기존 RealmObjects 목록을 업데이트하거나 기존 객체를 찾을 수 없는 경우 새 복사본을 만듭니다. 이는 딥 카피 또는 업데이트입니다. 즉, 참고된 모든 객체가 복사되거나 업데이트됩니다. 객체를 복사하면 모든 필드 값이 복사됩니다. 객체 및 하위 객체의 설정되지 않은 필드는 제공하지 않으면 기본값으로 설정됩니다. 매개변수
반환 신규 또는 업데이트된 모든 RealmObject의 목록입니다. 스로우
|
동일한 io.realm.annotations.PrimaryKey 로 식별되는 기존 RealmObject를 업데이트하거나 기존 객체를 찾을 수 없는 경우 새 복사본을 만듭니다. 이는 딥 카피 또는 업데이트입니다. 즉, 참고된 모든 객체가 복사되거나 업데이트됩니다. 객체를 복사하면 모든 필드 값이 복사됩니다. 객체 및 하위 객체에서 설정되지 않은 필드는 제공하지 않으면 기본값으로 설정됩니다. 매개변수
반환 Realm에서 지원하는 모든 속성이 포함된 신규 또는 업데이트된 RealmObject입니다. 스로우
|
createAllFromJson
JSON 배열의 각 객체에 대한 Realm 객체를 만듭니다. 이 작업은 트랜잭션 내에서 수행되어야 합니다. 알 수 없는 속성이 있는 JSON 속성은 무시됩니다. JSON 객체에 RealmObject 필드가 없는 경우 RealmObject 필드는 해당 유형의 기본값으로 설정됩니다. 이 메서드는 현재 값 목록 필드를 지원하지 않습니다. 매개변수
스로우
|
createEmbeddedObject
public E createEmbeddedObject <E >( ) |
---|
새 내장된 객체를 인스턴스화하고 Realm에 추가합니다. 이 메서드는 내장된 것으로 표시된 유형의 객체를 생성하는 데만 사용해야 합니다. 매개변수
반환 새로 생성된 내장된 객체입니다. 스로우
|
createObject
기본 키 값이 이미 설정된 상태에서 Realm에 새 객체를 인스턴스화하고 추가합니다. 값이 기본 키 제약 조건을 위반하면 객체가 추가되지 않으며 RealmException 이 발생합니다. 모델 클래스에서 제공하는 기본 키의 기본값은 무시됩니다. 매개변수
반환 새 객체. 스로우
|
새 객체 를 인스턴스화하고 Realm 에 추가합니다. 이 메서드는 @PrimaryKey 주석이 없는 모델 클래스에서만 사용할 수 있습니다. 기본 키 가 있는 객체 를 생성하려면 대신 createObject(Class, Object) 또는 copyToRealm(RealmModel, ImportFlag...) 를 사용하세요. 매개변수
반환 새 객체. 스로우
|
createObjectFromJson
JSON 객체의 데이터로 미리 채워진 Realm 객체를 만듭니다. 이 작업은 트랜잭션 내에서 수행되어야 합니다. 속성을 알 수 없는 JSON 속성은 무시됩니다. JSON 객체에 RealmObject 필드가 없는 경우 RealmObject 필드는 해당 유형의 기본값으로 설정됩니다. 이 메서드는 현재 값 목록 필드를 지원하지 않습니다. 매개변수
반환 생성된 객체이거나 JSON 데이터가 제공되지 않은 경우 스로우
|
createOrUpdateAllFromJson
프라이머리 키로 식별되는 기존 객체 목록을 새 JSON 데이터로 업데이트하려고 시도합니다. Realm에서 기존 객체를 찾을 수 없는 경우 새 객체가 생성됩니다. 이는 트랜잭션 내에서 발생해야 합니다. RealmObject 를 업데이트할 때 JSON 객체에 필드가 없으면 해당 필드가 업데이트되지 않습니다. 새 RealmObject 가 생성되었지만 JSON 객체에서 필드를 찾을 수 없는 경우 해당 필드에 필드 유형의 기본값이 할당됩니다. 이 메서드는 현재 값 목록 필드를 지원하지 않습니다. 매개변수
스로우
|
createOrUpdateObjectFromJson
기본 키로 정의된 기존 객체를 새 JSON 데이터로 업데이트하려고 시도합니다. 기존 객체를 찾을 수 없으면 새 객체가 Realm에 저장됩니다. 이는 트랜잭션 내에서 발생해야 합니다. RealmObject 를 업데이트할 때 JSON 객체에 필드가 없으면 해당 필드가 업데이트되지 않습니다. 새 RealmObject 가 생성되었지만 JSON 객체에서 필드를 찾을 수 없는 경우 해당 필드에 필드 유형의 기본값이 할당됩니다. 이 메서드는 현재 값 목록 필드를 지원하지 않습니다. 매개변수
반환 io.realm.RealmObject 가 생성되거나 업데이트되었습니다. 스로우
|
삭제
deleteRealm
파일 시스템에서 주어진 RealmConfiguration 에 지정된 관련 임시 파일과 함께 Realm 파일을 삭제합니다. '.lock'이 있는 임시 파일 확장 프로그램은 삭제되지 않습니다. 이 메서드를 호출하기 전에 모든 Realm 인스턴스를 닫아야 합니다. 경고: 동기화된 Realm의 경우 사용자가 제어하는 모든 Realm 인스턴스가 닫히더라도 백그라운드 스레드의 내부 Realm 인스턴스가 닫히지 않을 가능성이 있습니다. 이렇게 하면 매개변수
반환
스로우 |
executionTransaction
Realm에서 지정된 트랜잭션을 실행합니다. startTransaction() 및 commitTransaction() 이 자동으로 호출됩니다. 트랜잭션 중에 예외가 발생하면 commitTransaction() 대신 취소 트랜잭션 () 이 호출됩니다. UI 스레드에서 이 메서드를 호출하면 RealmException 이 발생합니다. 이렇게 하면 프레임 드롭 또는 ANR이 발생할 수 있습니다. UI가 아닌 스레드에서 이 메서드를 호출하거나 대신 executionTransactionAsync(Transaction) 를 사용하는 것이 좋습니다. 매개변수
스로우
|
executionTransactionAsync
public RealmAsyncTask executeTransactionAsync ( Realm.Transaction transaction, Realm.Transaction.OnSuccess onSuccess, Realm.Transaction.OnError onError ) |
---|
executionTransactionAsync (Transaction) 와 유사하지만 OnSuccess 및 OnError 콜백도 허용합니다. 매개변수
반환 취소 가능한 작업을 나타내는 RealmAsyncTask 입니다. 스로우
|
public RealmAsyncTask executeTransactionAsync ( Realm.Transaction transaction, Realm.Transaction.OnError onError ) |
---|
executionTransactionAsync(Transaction) 와 유사하지만 OnError 콜백도 허용합니다. 매개변수
반환 취소 가능한 작업을 나타내는 RealmAsyncTask 입니다. 스로우
|
public RealmAsyncTask executeTransactionAsync ( Realm.Transaction transaction, Realm.Transaction.OnSuccess onSuccess ) |
---|
executionTransactionAsync (Transaction) 과 유사하지만 OnSuccess 콜백 도 허용합니다. 매개변수
반환 취소 가능한 작업을 나타내는 RealmAsyncTask 입니다. 스로우
|
executionTransaction(Transaction)과 유사하지만 작업자 스레드에서 비동기적으로 실행됩니다. 매개변수
반환 취소 가능한 작업을 나타내는 RealmAsyncTask 입니다. 스로우
|
동결
현재 Realm의 동결된 스냅샷을 반환합니다. 이 Realm은 IllegalStateException 을 발생시키지 않고 모든 스레드에서 읽고 쿼리할 수 있습니다. . 동결된 Realm에는 자체 수명 주기가 있으며 close() 를 호출하여 닫을 수 있지만 동결된 복사본을 생성한 Realm을 완전히 닫으면 동결된 Realm도 닫힙니다. 동결된 데이터는 정상적으로 쿼리할 수 있지만 어떤 방식으로든 데이터를 변경하거나 리스너를 등록하려고 하면 불법적인 상태 예외( IllegalStateException )가 발생합니다. . 참고: 버전이 다른 많은 수의 Realm을 활성 상태로 유지하면 Realm의 파일 크기에 부정적인 영향을 미칠 수 있습니다. 이러한 상황을 방지하려면 RealmConfiguration.Builder.maxNumberOfActiveVersions(long) 을 설정할 수 있습니다. 반환 이 Realm의 동결된 사본입니다. 재정의
|
getApplicationContext
public static Context getApplicationContext () |
---|
Realm.init(Context) 또는 Realm.init(Context, string) 을 사용하여 을 초기화할 때 사용되는 애플리케이션 컨텍스트를 가져옵니다.Realm 반환 Realm.init(Context) 또는 Realm.init(Context, string ) 을 사용하여 을 초기화할 때 사용되는 애플리케이션 컨텍스트이거나,Realm Realm 이 아직 초기화되지 않은 경우 null입니다. |
getDefaultConfiguration
public static RealmConfiguration getDefaultConfiguration () |
---|
getDefaultInstance
public static Realm getDefaultInstance () |
---|
setDefaultConfiguration(RealmConfiguration) 에 의해 설정된 io.realm.RealmConfiguration 에 의해 정의된 Realm 인스턴스를 반환하는 Realm 정적 생성자 반환 Realm 클래스의 인스턴스입니다. 스로우
|
getDefaultModule
public static Object getDefaultModule () |
---|
기본 Realm 모듈을 반환합니다. 이 모듈에는 현재 프로젝트에 있는 모든 Realm 클래스가 포함되지만 라이브러리 또는 프로젝트 종속성의 Realm 클래스는 포함되지 않습니다. 이들의 Realm 클래스는 자체 모듈을 사용하여 노출해야 합니다. 반환 기본 Realm 모듈 또는 기본 모듈이 없는 경우 스로우
|
getGlobalInstanceCount
이 구성을 사용하는 현재 프로세스의 모든 스레드에서 열려 있는 Realm 인스턴스의 현재 수를 반환합니다. 여기에는 동적 Realm과 일반 Realm이 모두 포함됩니다. 매개변수
반환 모든 스레드에서 열려 있는 Realm 인스턴스 수입니다. |
getInstance
제공된 io.realm.RealmConfiguration에 의해 정의된 Realm 인스턴스를 반환하는 Realm 정적 생성자입니다. 매개변수
반환 Realm 클래스의 인스턴스 스로우
|
getInstanceAsync
public static RealmAsyncTask getInstanceAsync ( RealmConfiguration configuration, Realm.Callback callback ) |
---|
프로세스에서 RealmConfiguration 당 첫 Realm 인스턴스를 생성하는 작업은 모든 초기화 코드(Realm 설정, 스키마 유효성 검사, 초기 데이터 생성)를 해당 점에서 실행해야 하므로 시간이 걸릴 수 있습니다. 이 메서드는 초기화 작업을 백그라운드 스레드에 배치하고 초기화가 완료된 후 Realm 인스턴스를 호출자 스레드에 비동기적으로 전달합니다. 매개변수
반환 취소 가능한 작업을 나타내는 RealmAsyncTask 입니다. 스로우
|
getLocalInstanceCount
이 메서드를 호출하는 스레드에서 열려 있는 Realm 인스턴스의 현재 수를 반환합니다. 여기에는 동적 Realm과 일반 Realm이 모두 포함됩니다. 매개변수
반환 호출자 스레드에서 열려 있는 Realm 인스턴스의 수입니다. |
getSchema
public RealmSchema getSchema () |
---|
이 Realm 에 대한 스키마 를 반환합니다. 스키마 는 변경할 수 없습니다. 수정하려고 하면 UnsupportedOperationException 이 발생합니다. . 스키마는 DynamicRealm.getSchema() 를 통해서만 수정할 수 있습니다. 또는 마이그레이션을 통해 수행할 수 있습니다. 반환 이 Realm의 RealmSchema 입니다. 재정의
|
init
Realm 라이브러리를 초기화하고 사용할 준비가 된 기본 구성을 생성합니다. 다른 Realm API와 상호 작용하기 전에 이 메서드를 호출해야 합니다 .하위 클래스:
매개변수
스로우 |
Realm 라이브러리를 초기화하고 사용할 준비가 된 기본 구성을 생성합니다. 다른 Realm API와 상호 작용하기 전에 이 메서드를 호출해야 합니다 .하위 클래스:
매개변수
스로우 |
insert
관리되지 않는 RealmObject를 삽입합니다. 이 방법은 삽입된 요소를 반환하지 않고 최소 할당 및 검사를 수행하므로 일반적으로 copyToRealm(RealmModel, ImportFlag...) 보다 빠릅니다. 삽입된 후에는 원본 객체에 대한 변경 사항이 유지되지 않습니다. 참고 사항:
managed RealmObject 를 반환하려면 copyToRealm(RealmModel, ImportFlag...) 를 사용하고, 그렇지 않으면 객체 가 많은 경우 일반적으로 이 메서드가 더 빠릅니다. 매개변수
스로우
|
관리되지 않는 RealmObjects 목록을 삽입합니다. 이 방법은 삽입된 요소를 반환하지 않고 최소 할당 및 검사를 수행하므로 일반적으로 copyToRealm(Iterable, ImportFlag...) 보다 빠릅니다. 삽입된 후에는 원본 객체에 대한 변경 사항이 유지되지 않습니다. 참고 사항:
managed RealmObject 를 반환하려면 copyToRealm(Iterable, ImportFlag...) 를 사용하고, 그렇지 않으면 객체 가 많은 경우 일반적으로 이 메서드가 더 빠릅니다. 매개변수
스로우 |
insertOrUpdate
관리되지 않는 RealmObject를 삽입하거나 업데이트합니다. 이 방법은 삽입된 요소를 반환하지 않고 최소 할당 및 검사를 수행하므로 일반적으로 copyToRealmOrUpdate(RealmModel, ImportFlag...) 보다 빠릅니다. 삽입된 후에는 원본 객체 에 대한 변경 사항이 유지되지 않습니다. 참고 사항:
managed RealmObject 를 반환하려면 copyToRealm(RealmModel, ImportFlag...) 를 사용하고, 그렇지 않으면 객체 가 많은 경우 일반적으로 이 메서드가 더 빠릅니다. 매개변수
스로우 |
관리되지 않는 RealmObjects 목록을 삽입하거나 업데이트합니다. 이 방법은 삽입된 요소를 반환하지 않고 최소 할당 및 검사를 수행하므로 일반적으로 copyToRealmOrUpdate(Iterable, ImportFlag...) 보다 빠릅니다. 삽입된 후에는 원본 객체에 대한 변경 사항이 유지되지 않습니다. 참고 사항:
managed RealmObject 를 반환하려면 copyToRealm(Iterable, ImportFlag...) 를 사용하고, 그렇지 않으면 객체 가 많은 경우 일반적으로 이 메서드가 더 빠릅니다. 매개변수
스로우
|
isEmpty
public boolean isEmpty () |
---|
이 io. 영역. Realm 에는 모든 객체가 포함되어 있습니다. 반환
재정의
|
migrateRealm
RealmMigration에서 마이그레이션을 수동으로 Atlas Triggers합니다. 매개변수
스로우
|
지정된 RealmConfiguration과 관련된 마이그레이션을 수동으로 Atlas Triggers합니다. Realm이 이미 최신 버전인 경우 아무 변화도 일어나지 않습니다. 매개변수
스로우
|
모든 변경 리스너 제거
public void removeAllChangeListeners () |
---|
모든 사용자 정의 변경 수신기를 제거합니다. 스로우 |
removeChangeListener
removeDefaultConfiguration
public static void removeDefaultConfiguration () |
---|
현재 기본 구성(있는 경우)을 제거합니다. setDefaultConfiguration(RealmConfiguration) 을 사용하여 새로운 기본 구성을 설정할 때까지 getDefaultInstance() 에 대한 추가 호출은 실패합니다. |
setDefaultConfiguration
io를 설정합니다. 영역.RealmConfiguration 은 getDefaultInstance() 를 호출할 때 사용됩니다. 매개변수
스로우 |
위치
이 유형의 특정 객체를 쿼리하는 데 사용할 수 있는 유형이 지정된 RealmQuery를 반환합니다. 매개변수
반환 RealmQuery를 사용하여 이 유형의 특정 객체를 쿼리할 수 있습니다. |