如何在Go中将C.jstring转换为可用的字符串?
我正在使用GoAndroid.
在C中,您可以执行类似此stackoverflow线程中的操作
JNIEXPORT void JNICALL Java_ClassName_MethodName(JNIEnv *env, jobject obj, jstring javaString)
{
const char *nativeString = (*env)->GetStringUTFChars(env, javaString, 0);
// use your string
(*env)->ReleaseStringUTFChars(env, javaString, nativeString);
}
Run Code Online (Sandbox Code Playgroud)
在Go它开始看起来像这样
func Java_ClassName_MethodName(env *C.JNIEnv, clazz C.jclass, jstring javaString) {
defer func() {
if err := recover(); err != nil {
log.Fatalf("panic: init: %v\n", err)
}
}()
// ???
}
Run Code Online (Sandbox Code Playgroud)