Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 不能';t从loader dalvik.system加载alljoyn_java_Android_Alljoyn - Fatal编程技术网

Android 不能';t从loader dalvik.system加载alljoyn_java

Android 不能';t从loader dalvik.system加载alljoyn_java,android,alljoyn,Android,Alljoyn,我正在使用Alljoyn框架创建聊天应用程序,出现以下错误,请有人帮助我。alljoyn罐子已经安装好了 FATAL EXCEPTION: main Process: com.example.vikesh.chat_application, PID: 4326

我正在使用Alljoyn框架创建聊天应用程序,出现以下错误,请有人帮助我。alljoyn罐子已经安装好了

FATAL EXCEPTION: main
                                                                               Process: com.example.vikesh.chat_application, PID: 4326
                                                                               java.lang.UnsatisfiedLinkError: Couldn't load alljoyn_java from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.vikesh.chat_application-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.vikesh.chat_application-1, /vendor/lib, /system/lib]]]: findLibrary returned null
                                                                                   at java.lang.Runtime.loadLibrary(Runtime.java:358)
                                                                                   at java.lang.System.loadLibrary(System.java:526)
                                                                                   at com.example.vikesh.chat_application.AlljoynService.<clinit>(AlljoynService.java:1252)
                                                                                   at java.lang.Class.newInstanceImpl(Native Method)
                                                                                   at java.lang.Class.newInstance(Class.java:1208)
                                                                                   at android.app.ActivityThread.handleCreateService(ActivityThread.java:2553)
                                                                                   at android.app.ActivityThread.access$1800(ActivityThread.java:135)
                                                                                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
                                                                                   at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                   at android.os.Looper.loop(Looper.java:136)
                                                                                   at android.app.ActivityThread.main(ActivityThread.java:5017)
                                                                                   at java.lang.reflect.Method.invokeNative(Native Method)
                                                                                   at java.lang.reflect.Method.invoke(Method.java:515)
                                                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
                                                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
                                                                                   at dalvik.system.NativeStart.main(Native Method)
致命异常:main
进程:com.example.vikesh.chat_应用程序,PID:4326
java.lang.unsatifiedlinkerror:无法从加载程序dalvik.system.PathClassLoader[DexPathList[[zip文件”/data/app/com.example.vikesh.chat_application-1.apk]],nativeLibraryDirectories=[/data/app lib/com.example.vikesh.chat_application-1,/vendor/lib,/system/lib]]:findLibrary返回null
位于java.lang.Runtime.loadLibrary(Runtime.java:358)
位于java.lang.System.loadLibrary(System.java:526)
位于com.example.vikesh.chat_application.AlljoynService.(AlljoynService.java:1252)
位于java.lang.Class.newInstanceImpl(本机方法)
位于java.lang.Class.newInstance(Class.java:1208)
位于android.app.ActivityThread.handleCreateService(ActivityThread.java:2553)
在android.app.ActivityThread.access$1800(ActivityThread.java:135)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:136)
位于android.app.ActivityThread.main(ActivityThread.java:5017)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:515)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
在dalvik.system.NativeStart.main(本机方法)

您需要将AllJoyn liballjoyn_java.so文件放入项目中。 例如,在Android Studio中,此文件的通常位置为: [your_project_dir]/app/src/main/jniLibs/armeabi/

上述路径的armeabi部分假设您先前构建的AllJoyn.so文件是针对“arm”CPU(armeabi指令集)的

注意:当我从我的应用程序中删除.so文件时,我得到了与您报告的相同的错误。当我把.so文件放回去时,我仍然得到了相同的错误。我必须从我的Android设备上卸载这个应用程序,在Android Studio中,我必须清理并重建这个应用程序,然后才能通过这个错误

其他一些需要考虑的事情…

确保在应用程序中您正在呼叫

static {
    System.loadLibrary("alljoyn_java");
}
确保先前构建的liballjoyn_java.so与Android设备的cpu指令集匹配。例如,您可以使用Droid Info等应用程序验证Android的指令集。假设它是armeabi,那么在构建AllJoyn核心项目时,至少需要在scons build命令中指定以下开关

scons BINDINGS="cpp,java,c" OS=android CPU=arm VARIANT=release
最后,下面的Stackoverflow链接讨论了出现错误的一般原因:

这是Alljoyn libllijoyn_java的当前位置。因此,它实际上已经在“C:\Users\vikesh\Desktop\Final Year project\Source\u Code\Chat\u Application\app\src\main\jniLibs\armeabi”中的项目文件中。非常感谢您的回答Sir@p。Sigurdson:您好,先生,在这里,我在我的项目中使用了叮当声\u peerconnection\u so.so文件,我得到了相同的错误,我在jnilib中创建了所有文件夹,但在三星galaxy tab 7(SM-T311)中仍然存在问题。因此,请告诉我问题出在哪里?