c# – 使用JNI AndroidJNI.GetMethodID与字符串参数统一
发布时间:2020-12-15 17:26:40 所属栏目:百科 来源:网络整理
导读:我正在努力与 android java插件合并我试图从统一调用 java的函数,它成功地工作. cls_Activity = AndroidJNI.FindClass("com/unity3d/player/UnityPlayer"); fid_Activity = AndroidJNI.GetStaticFieldID(cls_Activity,"currentActivity","Landroid/app/Activ
我正在努力与
android
java插件合并我试图从统一调用
java的函数,它成功地工作.
cls_Activity = AndroidJNI.FindClass("com/unity3d/player/UnityPlayer"); fid_Activity = AndroidJNI.GetStaticFieldID(cls_Activity,"currentActivity","Landroid/app/Activity;"); obj_Activity = AndroidJNI.GetStaticObjectField(cls_Activity,fid_Activity); kdataActivityClass = AndroidJNI.FindClass("com/kdata/unitytest/UnityUrlPlugin"); startAdsMethod = AndroidJNI.GetMethodID(kdataActivityClass,"getURL","(I)Ljava/lang/String;"); jvalue[] myArray = new jvalue[1]; myArray[0].i =testvalue; gui.text= AndroidJNI.CallStaticStringMethod(obj_Activity,startAdsMethod,myArray); 使用上面的代码,我启用了将int值传递给我的java函数并接收字符串值.当我试图传递字符串值时,它对我不起作用.问题出在这里,因为JNI中没有字符串类型 jvalue[] myArray = new jvalue[1]; myArray[0].i =testvalue; 解决方法
您正在寻找的数据类型是jstring,在JNI中,您可以使用newString或newStringUTF创建它
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |