static public native int write(int fd, byte[] data);
我用友善提供的接口write发送“\r”(自己写的一个发送短信功能的应用程序),程序能正常运行(短信能成功)。
然后我自己写了一个JNI和HardWare中间层的库,在发送“\r”时候出现问题了。
我用的方法大概过程如下:
APP:
str2 ="ATD"+ edittext1.getText().toString()+";\r";
byte2 = str2.getBytes();
HardwareControler .write(i,byte2);
JNI:
char *buf;
buf = (char *)env->GetByteArrayElements(data,NULL); //把byte类型转换成char *
Hardware:
write(fd,data,sizeof(data));
如何解决android “\r”数据转换问题???????