欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android-JNI-互调问题

程序员文章站 2022-06-12 19:35:19
...

问题1.返回String.

如果返回的是String,并且文件是c,不是cpp.

则需要(*env)->NewStringUTF(env,str)

JNIEXPORT jint JNICALL Java_test_test_test_ccx_com_testtesttest_Java2C_sort
  (JNIEnv *env, jobject instance, jint a, jint b ){

         jclass myclass = (*env)->FindClass(env,"test/test/test/ccx/com/testtesttest/Java2C");
         jmethodID mid = (*env)->GetMethodID(env,myclass,"show","(Ljava/lang/String;)V");
         (*env)->CallVoidMethod(env,instance,mid,(*env)->NewStringUTF(env,"adfsdvf"));

         return sort(a,b);
}

int sort(int a,int b ){
  return a+b;
}

 否则会报错.

    public native int sort( int a, int b);


    public void show(String msg) {
        Toast.makeText(mContext, msg, Toast.LENGTH_SHORT).show();
    }

 

相关标签: jni