Ви можете отримати доступ до файлу царства безпосередньо. Ось рішення, яке я використав.
Спочатку ви можете скопіювати файл realm, який знаходиться в '/ data / data / packagename / files', в Environment.getExternalStorageDirectory () + '/ FileName.realm':
public class FileUtil {
public static void copy(File src, File dst) throws IOException {
InputStream in = new FileInputStream(src);
OutputStream out = new FileOutputStream(dst);
// Transfer bytes from in to out
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
in.close();
out.close();
}
}
Realm realm = null;
try {
realm = Realm.getInstance(this);
File f = new File(realm.getPath());
if (f.exists()) {
try {
FileUtil.copy(f, new File(Environment.getExternalStorageDirectory()+"/default.realm"));
}
catch (IOException e) {
e.printStackTrace();
}
}
}
finally {
if (realm != null)
realm.close();
}
По-друге, використовуйте інструмент ADB, щоб витягнути цей файл так:
$ adb pull /sdcard/default.realm.
Тепер ви можете відкрити файл у браузері Realm.