我的本機活動應用程序出現了一些問題。它可以在99%的設備上正常工作。但有時用戶得到以下錯誤:本機活動應用程序中的「無法找到本機庫」錯誤
java.lang.RuntimeException: Unable to start activity ComponentInfo{nightradio.sunvox/nightradio.sunvox.MyNativeActivity}:
java.lang.IllegalArgumentException: Unable to find native library: sundog
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2070)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2095)
at android.app.ActivityThread.access$600(ActivityThread.java:134)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4830)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
at dalvik.system.NativeStart.main(Native Method)
...
我不明白爲什麼。該應用程序擁有armeabi,armeabi-v7a和x86文件夾中的所有必需庫。它已在多種不同架構的設備上進行測試。
android:hasCode =「true」選項存在。
另外我注意到,這些有問題的設備大部分都有瑞芯微CPU(RK3066,RK2928,RK2926)。但不是所有的。最新的有華爲K3V2 CPU和大量的可用內存。 另一本地活動應用程序(不是我的)也不適用於最新的設備。
任何在異常之前獲取日誌消息的機會? 'dlopen()'可能有錯誤信息。 – fadden
我會盡力的。但是最好的辦法是什麼? 我總是在Android 2.3上使用Log Collector。但是由於某些原因,最新的Android版本日誌非常短。似乎對日誌大小有一些系統限制。 – NightRadio
如果設備無法加載庫,是否100%可重現? –