我正在将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可解决此问题。

10-07 22:42