Realm沿着Android库项目

hgb9j2n6  于 12个月前  发布在  Android
关注(0)|答案(1)|浏览(144)

我有一个库项目,其中包含一些依赖项,如fastadapter,nanotask,realm等。我不能让它沿着与主应用程序一起工作。不知何故,我需要在库项目和主应用程序上的realm。

apply plugin: 'realm-android'

字符串

构建错误:

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException:
com.android.ide.common.process.ProcessException:
java.util.concurrent.ExecutionException: com.android.dex.DexException:
Multiple dex files define Lio/realm/DefaultRealmModule;


如果我应用插件只与库项目比没有更多的建设错误。但得到这个错误,而使用领域。

Task is not part of the schema for this Realm.
                     at io.realm.internal.RealmProxyMediator.getMissingProxyClassException(RealmProxyMediator.java:242)
                     at io.realm.DefaultRealmModuleMediator.getTableName(DefaultRealmModuleMediator.java:107)
                     at io.realm.RealmSchema.getTable(RealmSchema.java:295)
                     at io.realm.Realm.checkHasPrimaryKey(Realm.java:1530)
                     at io.realm.Realm.copyToRealmOrUpdate(Realm.java:952)


这里是图书馆阶梯

qnakjoqk

qnakjoqk1#

如果Realm在库项目中使用,则必须使用架构定义RealmModule。否则,它将与为应用生成的架构冲突。这就是多个DefaultRealmModule错误的来源。您可以在此处阅读更多信息:https://realm.io/docs/java/latest/#sharing-schemas。
具体来说,这意味着库中的RealmConfiguration必须看起来像这样:

@RealmModule(library = true, allClasses = true)
public class MyLibraryModule() {

}

RealmConfiguration config = new RealmConfiguration.Builder()
  .modules(new MyLibraryModule())
  .build();

字符串

相关问题