Java createRealmObjectSchema的替代方案,在3.5.0版中删除

Java createRealmObjectSchema的替代方案,在3.5.0版中删除,java,android,realm,Java,Android,Realm,在迁移过程中是否有任何方法初始化整个实体。我的意思是,一个复杂的类,我想完全声明它,而不是多次手动.addField 在RealmJava版本3.4.0中,我已经成功地使用了生成的RealmProxy类的方法createRealmObjectSchema 例如,如果我有一个名为NewBigEntityClass的类,它有许多字段,并且可能与子实体有关系 然后我写了一个这样的迁移 if (oldVersion <= 2) { NewBigEntityClassRealmProxy.

在迁移过程中是否有任何方法初始化整个实体。我的意思是,一个复杂的类,我想完全声明它,而不是多次手动
.addField

在RealmJava版本3.4.0中,我已经成功地使用了生成的
RealmProxy
类的方法
createRealmObjectSchema

例如,如果我有一个名为
NewBigEntityClass
的类,它有许多字段,并且可能与子实体有关系

然后我写了一个这样的迁移

if (oldVersion <= 2) {
     NewBigEntityClassRealmProxy.createRealmObjectSchema(dynamicRealm.getSchema());
}

if(旧版本此PR中此方法的范围已更改,并将其重命名为
RealmObjectProxy
类中的
createExpectedObjectSchemaInfo
方法仅供内部使用。很抱歉,建议的方法是逐字段执行…不过,这将通过近期支持自动迁移而得到改进未来。请看Hi@Beender,问题是我没有请求自动迁移,而是完全声明一个新表以备份一个全新实体的可能性。Hi@Beender,问题是我没有请求自动迁移,而是完全声明一个新表以备份一个全新实体的可能性。由于缺少此功能,如果必须逐个字段添加新实体,那么添加新实体的过程会非常繁琐。对于单个添加/删除的字段,我已经在逐个手动添加,但是当我创建一个全新的类时,我不想添加架构添加的所有样板代码。entit中可能有一个公共方法y OsObjectSchemaInfo创建了RealmSchema的整个实体?困难在于Realm只能提供当前版本的模式信息。假设您在版本1添加了一个模型
Foo
,然后在版本2删除了
Foo
的一个字段。在模式版本2运行应用程序时,您将得到
Fooversion 2位于
version==1
块。这将是非常混乱的代码,并且不太容易维护。realm java将实现与此处描述的realm cocoa类似的功能。这将使您的迁移更加容易。