美文网首页
NDK JNI C++类型转java类型

NDK JNI C++类型转java类型

作者: izheer | 来源:发表于2023-03-20 18:34 被阅读0次

    1、 C++ Int型数组 -> java int数组

    int ids[size];
     for (int i = 0; i < size; ++i){           
         ids[i] = i+10;
     }
    jintArray javaArr = env->NewIntArray(size);
    env->SetIntArrayRegion(javaArr,0,size,ids);
    return javaArr;
    

    2、 C++ String -> java String

    std::string fileStr;
    if (fileStr.c_str()!= nullptr){
         jstring filename = env->NewStringUTF(fileStr.data());
         return filename;
     } 
     return null;
    

    3、 C++ Vector -> java 数组

    void EditCallback::OnShape(ShapeType shapeType, std::vector<float> vecFeature) {
              if (!vecFeature.empty()) {
                    int size = vecFeature.size();      
                    jfloatArray features = env->NewFloatArray(size);
                    env->SetFloatArrayRegion(features, 0, size, vecFeature.data());
                    env->CallVoidMethod(objCallback,
                                        CallBackJniData::editCallBack_onShape_MethodId,
                                        (int) shapeType,features);
                }
    }
    

    相关文章

      网友评论

          本文标题:NDK JNI C++类型转java类型

          本文链接:https://www.haomeiwen.com/subject/vcvyhdtx.html