我正在将Realm数据库用于Android应用程序。不知道为什么会这样,但是每次我卸载应用程序时,首次运行总是在以下位置的“活动”中崩溃:
realm = Realm.getDefaultInstance();
崩溃消息:
Caused by: java.lang.NullPointerException: No default RealmConfiguration was found. Call setDefaultConfiguration() first
在我的应用程序类中,我有:
@Override
public void onCreate() {
super.onCreate();
RealmConfiguration config = new RealmConfiguration.Builder(this)
.name("mydb.realm")
.deleteRealmIfMigrationNeeded()
.schemaVersion(1)
.migration(new Migration())
.build();
Realm.setDefaultConfiguration(config);
//...Crashlytics and other things...
}
崩溃之后的所有将来运行都是可以的。有任何想法吗?
最佳答案
我发现了问题。领域与它无关。由于清单中的allowBackup属性,我的自定义应用程序的onCreate从未在首次运行时调用。将其设置为false可解决此问题。