Я пытаюсь реализовать nanomsg в андроиде и я получил Java привязок по этой ссылке: http://niwinz.github.io/jnanomsg/ после этой зависимости
компиляции «jnanomsg: jnanomsg: 0,4 .3 '. Это возвращало мне это солнце/jna/libjnidispatch.so не было найдено.Хочет реализовать nanomsg в андроиде, используя его Java связывания jnanomsg получая java.lang.ExceptionInInitializerError
Через некоторое время я понял, «.so» файл, который требуется для ЮНА отсутствует позже я получил все необходимые «.so» по этой ссылке
https://github.com/java-native-access/jna/tree/master/dist после этого я скопировал libjnidispatch.so файл в приложение/src/main/jniLibs/armeabi-v7a/libjnidispatch.so и
Я загрузил такой файл с помощью System.loadLibrary ("jnidispatch") после того, как приложение приложения скомпилировалось. При попытке создать объект для ReqSocket sock = new ReqSocket();
я получаю следующее сообщение об ошибке:
java.lang.ExceptionInInitializerError
at nanomsg.Nanomsg.getSymbols(Nanomsg.java:35)
at nanomsg.Nanomsg.<clinit>(Nanomsg.java:48)
at nanomsg.Nanomsg$constants.<clinit>(Nanomsg.java:51)
at nanomsg.reqrep.ReqSocket.<init>(ReqSocket.java:13)
at com.example.nanomsg.onClick(MainActivity.java:125)
at android.view.View.performClick(View.java:5201)
at android.view.View$PerformClick.run(View.java:21163)
at android.os.Handler.handleCallback(Handler.java:746)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5443)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
Caused by: java.lang.IllegalStateException: The SecurityManager implementation on this platform is broken; you must explicitly provide the class to register
at com.sun.jna.Native.getCallingClass(Native.java:1295)
at com.sun.jna.Native.register(Native.java:1252)
at nanomsg.NativeLibrary.<clinit>(NativeLibrary.java:30)
at nanomsg.Nanomsg.getSymbols(Nanomsg.java:35)
at nanomsg.Nanomsg.<clinit>(Nanomsg.java:48)
at nanomsg.Nanomsg$constants.<clinit>(Nanomsg.java:51)
at nanomsg.reqrep.ReqSocket.<init>(ReqSocket.java:13)
at com.example.nanomsg.MainActivity.onClick(MainActivity.java:125)
at android.view.View.performClick(View.java:5201)
at android.view.View$PerformClick.run(View.java:21163)
at android.os.Handler.handleCallback(Handler.java:746)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5443)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)
на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:618)
Может кто-нибудь может помочь, пожалуйста, мне, какую ошибку я делаю здесь. Любая помощь будет оценена по достоинству.
Запустите с системным свойством 'jna.debug_load = true' и' jna.debug_load.jna = true', чтобы получить дополнительную информацию о загрузке во время выполнения. – technomage
Hi technomage, я отредактировал мое сообщение, пожалуйста, проверьте его один раз и спасибо за ответ. –
Это может помочь: https://groups.google.com/forum/#!topic/jna-users/mlUcaZZYkgQ – technomage