我正在尝试从本机函数返回QAndroidJniObject
。使用Qt 5.5和QtAndroidExtras。
这是我的第一个天真实施:
QAndroidJniObject doSomething() {
return QAndroidJniObject("android/os/Bundle", "()V");
}
static jobject nativeFunc(JNIEnv *env, jclass, jlong nativePointer, int, jstring, jstring, jstring)
{
QAndroidJniObject obj = doSomething();
return obj.object();
}
不幸的是,我收到了一个错误:
I/dalvikvm(32413): JNI ERROR (app bug): accessed deleted global reference 0x1de00462
当QAndroidJniObject
被销毁时,底层的java对象也会被销毁。似乎QAndroidJniObject
没有detach()
方法或其他内容。