world reservada palabra nazareno hello descargar java jni

java - reservada - jni types



JNI convierte jstring en char* (2)

Pasé una cadena de URL de Java a código C como tipo de datos jstring mediante el uso de JNI. Y mi método de biblioteca necesita un char * como url.

¿Cómo puedo convertir jstring en char * ?

PD: ¿Hay alguna ventaja de usar jcharArray en C? (es decir, Pasando char [] lugar de cadena en el método nativo)



Gracias primero la respuesta de Jason Rogers.

En Android && cpp debería ser esto:

const char *nativeString = env->GetStringUTFChars(javaString, JNI_FALSE); // use your string env->ReleaseStringUTFChars(javaString, nativeString);

Puede corregir estos errores:

1.error: el operando base de ''->'' tiene un tipo no puntero ''JNIEnv {aka _JNIEnv}''

2.error: no hay función de coincidencia para la llamada a ''_JNIEnv :: GetStringUTFChars (JNIEnv * &, _jstring * &, bool)''

3.error: sin función de coincidencia para la llamada a ''_JNIEnv :: ReleaseStringUTFChars (JNIEnv * &, _jstring * &, char const * &)''

4.add "env-> DeleteLocalRef (nativeString);" al final.