我在我的 android 应用程序中从 C 程序接收 DatagramPacket。我需要使用 NDK 来解析数据。我想将接收到的数据包传递给 native 方法进行解析。有人能告诉我一种将接收到的数据包传递给 C 函数的方法吗?
DatagramPacket packet = new DatagramPacket(buf, buf.length);
socket.receive(packet);
System.out.println(packet.getLength());
现在我需要将接收到的数据包传递给 C 函数进行解析。
最佳答案
将 buf
(假设它是一个 byte[]
)和 packet.getLength()
的值传递给 JNI 函数。在其中,使用字节数组函数 - e。 G。 JNIEnv::GetByteArrayRegion()
获取实际字节数。
关于Android NDK 如何将收到的 DatagramPacket 作为参数传递给 C 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36180968/