如何传递一个字符串数组?
xx.cpp
JNIEXPORT jstring JNICALL Hello_Native(JNIEnv *env, jobject obj,jstring string)
{
const char *str = env->GetStringUTFChars(string, 0);
return env->NewStringUTF( "Hello from JNI !");
}
static JNINativeMethod gMethods[] = {
{"JniHello",const_cast<char*>("(Ljava/lang/jsting)Ljava/lang/jsting;"),(void*)Hello_Native}
xx.java
public native static String JniHello(String text);
为什么系统总是提醒当在 gMethods 中申明 JniHello 时,参数不正确。
字符串数组是这么表示吧 jobjectArray,可看你的代码明明是string
在源码里找了一个,难道是少了个分号?
private static native String native_get(String key);
static JNINativeMethod method_table[] = {
{ "native_get", "(Ljava/lang/String;)Ljava/lang/String;",
(void*) SystemProperties_getS },