Я пытаюсь использовать jeromq для проекта Android. Мне нужно подключиться к другому дилерскому устройству. Вот мой код:
ZContext zcontext = new ZContext(1);
ZMQ.Socket zsocket = zcontext.createSocket(ZMQ.DEALER);
String identity = "S61_phone";
zsocket.setIdentity(identity.getBytes(ZMQ.CHARSET));
zsocket.connect("tcp://my_other_device_ip_and_port_here");
zsocket.send("test",0);
При вызове соединения возникает ошибка:
2019-09-26 16:59:53.033 18347-18379/? E/AndroidRuntime: НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: Процесс Thread-4: com.flir.flironeexampleapplication, PID: 18347 java.lang.NoSuchMethodError: Нет виртуального метода clear()Ljava/nio/ByteBuffer; в классе Ljava/nio/ByteBuffer; или его суперклассы (объявление «java.nio.ByteBuffer» появляется в /system/framework/core-oj.jar) в zmq.Signaler.send(Signaler.java:97) в zmq.Mailbox.send(Mailbox.java :71) в zmq.Ctx.sendCommand(Ctx.java:517) в zmq.ZObject.sendCommand(ZObject.java:382) в zmq.ZObject.sendPlug(ZObject.java:185) в zmq.ZObject.sendPlug(ZObject .java:175) в zmq.Own.launchChild(Own.java:115) в zmq.SocketBase.addEndpoint(SocketBase.java:590) в zmq.SocketBase.connect(SocketBase.java:582) в org.zeromq.ZMQ $Socket.connect(ZMQ.java:2531) в com.flir.flironeexampleapplication.GLPreviewActivity.onDeviceConnected(GLPreviewActivity.java:115) в com.flir.flironesdk.EmbeddedDevice$4.run(EmbeddedDevice.java:512) в java.lang .Thread.run(Thread.java:764)
Моя среда:
- Джеромк 0.5.2
- целевое устройство, на котором выполняется код, — Android 8.1 (Oreo).
- Компиляция в Android Studio с JDK 1.8.0_66/ndk r10e
Есть идеи, в чем проблема? Большое спасибо.