1.定义JAVA类test
package com.example.mylib;
public class test {
int id;//ID
char lab;//标签
long id_card;//身份
String name;//名称
public test(){
}
}
2.声明原生JNI函数
public native test objFromJNI(test obj);
3.实现objFromJNI原生函数
struct myStruct{
int id;
uint8_t lab;
long id_card;
std::string name;
}new_struct;
extern "C"
JNIEXPORT jobject JNICALL
Java_com_example_mylib_MainActivity_objFromJNI(JNIEnv *env, jobject thiz, jobject obj) {
//C++实例化结构体
new_struct.id=0001;
new_struct.lab=0xff;
new_struct.id_card=0xffff+128;
new_struct.name="jni_test_object_return";
//C++ JNI 操作JAVA类型
jclass c = env->FindClass("com/example/mylib/test");
jfieldID f1=env->GetFieldID(c,"id","I");
jf