2017-05-24 13 views
0

私はいくつかのスキーマを含むデフォルトのレルムインスタンスで作業しています。今、私は別の領域インスタンスで新しいスキーマを作成したいと思います。したがって、新しいRealm構成を作成しました。この新しいスキーマのエンティティをクエリまたは格納すると、既定の構成ではなく新しい構成が使用されます。このようにして、別のデータベースで使用するため、新しいスキーマの移行を作成する必要はありません。しかし、デフォルトのレルムインスタンスを使用すると、例外がスローされ(RealmMigrationNeededException)、新しいスキーマのマイグレーションを作成する必要があることがわかります。新しいデータベースでのみ新しいスキーマを使用したいと思ったら、それを避けることはできますか?2つの異なるレルム構成の使用方法

答えて

3

チェック・レルムのドキュメント: https://realm.io/docs/java/latest/#schemas

あなたが異なる設定のためのあなたの2つのカスタムモジュールを定義する必要があります。 たとえば、configBはCat.classスキーマのみを気にします。

// Create my module A 
@RealmModule(classes = { Person.class, Dog.class }) 
public class MyModule { 
} 

// Create the module B 
@RealmModule(classes = { Cat.class }) 
public class MyOtherModule { 
} 

// Set the module in the RealmConfiguration to allow only classes defined by the module. 
RealmConfiguration configA = new RealmConfiguration.Builder() 
    .modules(new MyModule()) 
    .name("A.realm") 
    .build(); 

RealmConfiguration configB = new RealmConfiguration.Builder() 
    .modules(new MyOtherModule()) 
    .name("B.realm") 
    .build(); 
+1

ありがとうございます!それが私が探していたものです。 –

関連する問題