android的本机UDP实现

android的本机UDP实现,android,udp,java-native-interface,native,Android,Udp,Java Native Interface,Native,我尝试在Android上使用UDP服务器/客户端的本机实现,我使用JNI从java访问本机代码 该代码在Android 1.5(HTC Hero)上测试成功,但当我尝试在Android 2.1(HTC Legend)上运行相同的应用程序时,每次收到大于32字节的数据包时,我都会“检测到堆栈损坏”,应用程序崩溃 有人知道什么可能导致堆栈损坏吗?我找到了两种可能的解决方案: 1.使用read而不是recvfrom() 2.编译源代码时,请使用ndk中的android库和标头。只需将头文件目录添加到m

我尝试在Android上使用UDP服务器/客户端的本机实现,我使用JNI从java访问本机代码

该代码在Android 1.5(HTC Hero)上测试成功,但当我尝试在Android 2.1(HTC Legend)上运行相同的应用程序时,每次收到大于32字节的数据包时,我都会“检测到堆栈损坏”,应用程序崩溃


有人知道什么可能导致堆栈损坏吗?

我找到了两种可能的解决方案: 1.使用read而不是recvfrom() 2.编译源代码时,请使用ndk中的android库和标头。只需将头文件目录添加到makefile中的头搜索路径


希望对有趣的问题有所帮助。刚找到这个: