ros*_*lin 4 database migration android realm
我开始使用以下代码编写迁移逻辑:https: //github.com/realm/realm-java/blob/master/examples/migrationExample/src/main/java/io/realm/examples/realmmigrationexample/ MigrationExampleActivity.java
编写代码后,我在这一行收到错误:
String path3 = MigrationClass.copyBundledRealmFile(this, this.getResources().openRawResource(R.raw.default1), "default1");
Run Code Online (Sandbox Code Playgroud)
它找不到R.raw.default1文件,因为到目前为止,我使用了默认的Realm,如下所示:
Realm realm = Realm.getInstance(context);
Run Code Online (Sandbox Code Playgroud)
我的问题是我在哪里可以获得此域文件的文件路径?
Chr*_*ior 10
Realm只使用Context调用,getFilesDir()
并调用默认的Realm default.realm
.所以在你的情况下你应该使用:
String realmPath = new File(context.getFilesDir(), "default.realm").getAbsolutePath();
Realm.migrateRealmAtPath(realmPath, new CustomMigration());
Run Code Online (Sandbox Code Playgroud)