Я слышал о RealmDb, которая является удобной базой данных, которая может заменить sqlite на платформе Android.realmDb ошибка инициализации
им пытаются получить его работу на моей галактики s2 андроида версии 2.3
я использую Realm версии 0.79.1
однако я получаю следующий массаж:
03-06 12:26:24.820: E/AndroidRuntime(17507): FATAL EXCEPTION: main
03-06 12:26:24.820: E/AndroidRuntime(17507): java.lang.ExceptionInInitializerError
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.Realm.<init>(Realm.java:199)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.Realm.createAndValidate(Realm.java:516)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.Realm.create(Realm.java:480)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.Realm.getInstance(Realm.java:397)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.Realm.getInstance(Realm.java:359)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.Realm.getInstance(Realm.java:340)
03-06 12:26:24.820: E/AndroidRuntime(17507): at com.project.peoples.PersonListActivity.addTestPersons(PersonListActivity.java:134)
03-06 12:26:24.820: E/AndroidRuntime(17507): at com.project.peoples.PersonListActivity.onCreate(PersonListActivity.java:34)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.os.Handler.dispatchMessage(Handler.java:99)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.os.Looper.loop(Looper.java:123)
03-06 12:26:24.820: E/AndroidRuntime(17507): at android.app.ActivityThread.main(ActivityThread.java:3691)
03-06 12:26:24.820: E/AndroidRuntime(17507): at java.lang.reflect.Method.invokeNative(Native Method)
03-06 12:26:24.820: E/AndroidRuntime(17507): at java.lang.reflect.Method.invoke(Method.java:507)
03-06 12:26:24.820: E/AndroidRuntime(17507): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
03-06 12:26:24.820: E/AndroidRuntime(17507): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
03-06 12:26:24.820: E/AndroidRuntime(17507): at dalvik.system.NativeStart.main(Native Method)
03-06 12:26:24.820: E/AndroidRuntime(17507): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load tightdb-jni: findLibrary returned null
03-06 12:26:24.820: E/AndroidRuntime(17507): at java.lang.Runtime.loadLibrary(Runtime.java:429)
03-06 12:26:24.820: E/AndroidRuntime(17507): at java.lang.System.loadLibrary(System.java:554)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.internal.TightDB.loadLibrary(TightDB.java:144)
03-06 12:26:24.820: E/AndroidRuntime(17507): at io.realm.internal.SharedGroup.<clinit>(SharedGroup.java:34)
03-06 12:26:24.820: E/AndroidRuntime(17507): ... 21 more
причиной является следующая строка:
Realm realmDb=Realm.getInstance(this);
Кто-нибудь знает причину и как с Olve его (я нашел на следующие, но в штрафной вполне понять, если он не имеет ничего общего со мной, как я не использую Gson на всех https://github.com/realm/realm-java/issues/620)
обновление: У меня есть собственные библиотеки в директории LIBS
обновление я cahnged расположение родных .so файлов каталогов быть direcetlly в директории LIBS, что я думаю, решается проблема, но ранее представил следующий код ошибки:
03-06 14:18:18.520: E/AndroidRuntime(20552): FATAL EXCEPTION: main
03-06 14:18:18.520: E/AndroidRuntime(20552): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.project.mishnayot/com.project.peoples.PersonListActivity}: io.realm.exceptions.RealmException: Could not find the initTable method in the generated io.realm.PersonRealmProxy class: Annotation processor may not have been executed.
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.os.Handler.dispatchMessage(Handler.java:99)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.os.Looper.loop(Looper.java:123)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.ActivityThread.main(ActivityThread.java:3691)
03-06 14:18:18.520: E/AndroidRuntime(20552): at java.lang.reflect.Method.invokeNative(Native Method)
03-06 14:18:18.520: E/AndroidRuntime(20552): at java.lang.reflect.Method.invoke(Method.java:507)
03-06 14:18:18.520: E/AndroidRuntime(20552): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
03-06 14:18:18.520: E/AndroidRuntime(20552): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
03-06 14:18:18.520: E/AndroidRuntime(20552): at dalvik.system.NativeStart.main(Native Method)
03-06 14:18:18.520: E/AndroidRuntime(20552): Caused by: io.realm.exceptions.RealmException: Could not find the initTable method in the generated io.realm.PersonRealmProxy class: Annotation processor may not have been executed.
03-06 14:18:18.520: E/AndroidRuntime(20552): at io.realm.Realm.initializeRealm(Realm.java:591)
03-06 14:18:18.520: E/AndroidRuntime(20552): at io.realm.Realm.createAndValidate(Realm.java:523)
03-06 14:18:18.520: E/AndroidRuntime(20552): at io.realm.Realm.create(Realm.java:480)
03-06 14:18:18.520: E/AndroidRuntime(20552): at io.realm.Realm.getInstance(Realm.java:397)
03-06 14:18:18.520: E/AndroidRuntime(20552): at io.realm.Realm.getInstance(Realm.java:359)
03-06 14:18:18.520: E/AndroidRuntime(20552): at io.realm.Realm.getInstance(Realm.java:340)
03-06 14:18:18.520: E/AndroidRuntime(20552): at com.project.peoples.PersonListActivity.addTestPersons(PersonListActivity.java:134)
03-06 14:18:18.520: E/AndroidRuntime(20552): at com.project.peoples.PersonListActivity.onCreate(PersonListActivity.java:34)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-06 14:18:18.520: E/AndroidRuntime(20552): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
Я понял, что, но я следил за всеми этапами, и библиотека находится внутри библиотек (обновленный вопрос с изображением) –
кажется родным libs должен находиться непосредственно в каталоге libs, а не в libs/lib, так или иначе, после того, как я столкнулся с другим массажем ошибок - обновил вопрос –
Похоже, вы столкнулись с этой ошибкой: https://github.com/realm/realm -java/issues/870, мы работаем над исправлением. –