无法加载tightdb-jni

时间:2014-11-26 17:39:31

标签: android realm

我想试试realm.io - 不幸的是我偶然发现:

E/AndroidRuntime( 4387): java.lang.RuntimeException: An error occured while executing doInBackground()
E/AndroidRuntime( 4387):    at android.os.AsyncTask$3.done(AsyncTask.java:299)
E/AndroidRuntime( 4387):    at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
E/AndroidRuntime( 4387):    at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
E/AndroidRuntime( 4387):    at java.util.concurrent.FutureTask.run(FutureTask.java:239)
E/AndroidRuntime( 4387):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
E/AndroidRuntime( 4387):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
E/AndroidRuntime( 4387):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
E/AndroidRuntime( 4387):    at java.lang.Thread.run(Thread.java:856)
E/AndroidRuntime( 4387): Caused by: java.lang.ExceptionInInitializerError
E/AndroidRuntime( 4387):    at io.realm.Realm.<init>(Realm.java:108)
E/AndroidRuntime( 4387):    at io.realm.Realm.createAndValidate(Realm.java:366)
E/AndroidRuntime( 4387):    at io.realm.Realm.create(Realm.java:355)
E/AndroidRuntime( 4387):    at io.realm.Realm.getInstance(Realm.java:314)
E/AndroidRuntime( 4387):    at io.realm.Realm.getInstance(Realm.java:193)
E/AndroidRuntime( 4387):    at realm_test.ligi.de.realmtest.MainActivity$ImportAsyncTask.doInBackground(MainActivity.java:33)
E/AndroidRuntime( 4387):    at realm_test.ligi.de.realmtest.MainActivity$ImportAsyncTask.doInBackground(MainActivity.java:29)
E/AndroidRuntime( 4387):    at android.os.AsyncTask$2.call(AsyncTask.java:287)
E/AndroidRuntime( 4387):    at java.util.concurrent.FutureTask.run(FutureTask.java:234)
E/AndroidRuntime( 4387):    ... 4 more
E/AndroidRuntime( 4387): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load tightdb-jni from loader dalvik.system.PathClassLoader[dexPath=/data/app/realm_test.ligi.de.realmtest-2.apk,libraryPath=/data/app-lib/realm_test.ligi.de.realmtest-2]: findLibrary returned null
E/AndroidRuntime( 4387):    at java.lang.Runtime.loadLibrary(Runtime.java:365)
E/AndroidRuntime( 4387):    at java.lang.System.loadLibrary(System.java:535)
E/AndroidRuntime( 4387):    at io.realm.internal.TightDB.loadLibrary(TightDB.java:144)
E/AndroidRuntime( 4387):    at io.realm.internal.SharedGroup.<clinit>(SharedGroup.java:32)
E/AndroidRuntime( 4387):    ... 13 more

调查领域-0.73.1.jar我只看到x86的本机库 - 不是用于arm - 这可以解释这一点。但那里的东西没有读,因为这个lib只适用于x86 - 我错过了什么?

1 个答案:

答案 0 :(得分:1)

我不确定你是怎么结论的? 您可以从realm.io网站下载或通过jcenter下载的发行版中包含的realm-0.74.0.jar有一个&#34; lib&#34;包含armeabi,armeabi-v7a,mips和x86二进制文件的文件夹。您可以通过将jar文件重命名为.zip并查看内容来查看。