2017-08-21 5 views
0

こんにちは私はモジュールとして別のアンドロイドプロジェクトを使用するアンドロイドプロジェクトを持っています。私はオフラインのデータストレージのために領域を使用しました。どちらのプロジェクトも領域データベースを使用します。プロジェクトを実行しようとすると、エラーが表示されます。私はそれでこれは、レルムモジュールを作成する正しい方法ですか?

URLの上にそのエラーを修正するために、このlinkを使用

class RealmModel is not part of the schema for this Realm 

、彼らは@RealmModuleアノテーションでRealmModuleクラスを作成するように依頼しました。これは私のクラス、

@RealmModule 
public class MessageRealmModule implements RealmModule { 

    @Override 
    public boolean library() { 
     return true; 
    } 

    @Override 
    public boolean allClasses() { 
     return false; 
    } 

    @Override 
    public Class<?>[] classes() { 
     return new Class<?>[0]; 
    } 

    @Override 
    public Class<? extends Annotation> annotationType() { 
     return null; 
    } 
} 

このエラーが発生した後。

java.lang.IllegalArgumentExceptionが:com.anubavam.message.MessageRealmModuleはRealmModuleではありません。 @RealmModuleをクラス定義に追加します。

答えて

1

いいえ、あなたはそのような注釈パラメータでそれを実行する必要があります。

@RealmModule(library = true, classes = { MyModelClass.class }) 
public class MessageRealmModule { 
} 

もキリスト教作業https://realm.io/docs/java/latest/#schemas

+0

そのを参照してください。ありがとう –

+0

また、私はライブラリ= trueを削除しました。なぜあなたは "library = true"を追加する必要があるのか​​教えてください。 –

+0

ライブラリプロジェクトでRealmを使用している場合のみ必要です。これは、ライブラリによって生成されたコードがメインのアプリプロジェクトと衝突しないようにするためです。 –

関連する問題