我有一个基于Realm的应用程序,我在其中保存了一些数据。我还通过- (IBAction)saveBtnPressed:(id)sender{
// Store the text field values of each row in an array here
}
打开(和关闭)不同的Realm实例,然后按预期工作,在不同的屏幕上查询数据。但是,每次重启应用程序后,域数据库都是空的。
我没有使用Realm的内存功能而不是Realm.getDefaultInstance()
。
我的配置如下:
deleteRealmIfMigrationNeeded()
然后我使用RealmConfiguration realmConfig =
new RealmConfiguration.Builder(context.getApplicationContext()).build();
Realm.setDefaultConfiguration(realmConfig);
。
答案 0 :(得分:2)
除非你这样做,否则不应该明确领域:
1。)deleteIfMigrationNeeded()
然后修改架构
2。)使用inMemory()
领域,你的过程在某个时候就死了
3。)在代码中的某处调用Realm.deleteAll()
4.。)您手动删除Realm文件
答案 1 :(得分:1)
您确定要正确调用commitTransaction吗?
如果你甚至在多个屏幕上调用相同的getDefaultInstance(),你会在Realm中获取数据,但你需要使用commitTransaction()将其写入磁盘。