http://www.aichengxu.com/view/48141 再次基础上做了改动 调用: int ilength,i; byte[] retdata; byte[] out1 = new byte[1024]; { out1[0] =(byte) 0X31; out1[1] =(byte) 0X32; out1[2] =0x33; out1[3] =0x34; out1[4] = 0x35; } retdata=JniNatives.Bluetooth_NativeProcessData_Send(out1, 5); jni:
JNIEXPORT jbyteArray JNICALL Native_ProcessData_Send(JNIEnv *env, jobject clazz, jbyteArray data,jint len) { jbyte gs_raw_data[256]; int i; jbyte* bytedata =env->GetByteArrayElements(data, 0); memset(&gs_raw_data,0,255); memcpy(&gs_raw_data,bytedata,len); // parse the data //below is the return 's bytearray lens jbyteArray jarrRV =env->NewByteArray(len+1); env->SetByteArrayRegion(jarrRV, 0,len,gs_raw_data); return jarrRV; } static JNINativeMethod gMethods[] = {
{"Bluetooth_NativeProcessData_Send","([BI)[B",(void*)Native_ProcessData_Send} }