JNI调用坑

1 自从targetSDKVersion 14,冰淇淋三明治,Android 4.0之后,java对象的局部引用在native函数调用完成后会销毁,如果native层有对jobject进行持有,则需要调用一下env->NewGlobalReference()把jobject变成全局引用。但是要记住在某个时候DeleteGlobalReference,防止java部分内存泄漏。否则会出现错误:attempt to use stale local reference xxxxx, 参考文档:https://android-developers.googleblog.com/2011/11/jni-local-reference-changes-in-ics.html

猜你喜欢

转载自www.cnblogs.com/eaglelun/p/9694756.html