Конвертировать C.jstring в нативную строку в Go

Как я могу преобразовать C.jstring в пригодную для использования строку в Go?

Я использую GoAndroid .

В C вы можете сделать что-то похожее на этот поток стекового потока

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);
}

в 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)
       }
   }()
   // ???
}

11
задан Community 23 May 2017 в 12:16
поделиться