连续两个错误:
jni error (app bug): accessed stale local reference 0xd0100019 (index 6 in a table of size 1)

一、jclass直接赋值导致的问题。

原因:不能直接引用jclass
解决方案:

static jclass myClass;
jclass cls = env->FindClass("com/xxx/class");
myClass = (jclass)env->NewGlobalRef(cls);

二、在c++某个方法中,直接引用不到jobject时,通过static jobject myObject,给对象set jobject均会发生各种异常。采用调用静态方法。如原来是
env->CallVoidMethod(myObj,postEventFromNativeID, result);非静态方法,需要时jobject(就是当前object),换种思路就是使用静态方法,只需要传入jclass就行。jclass可以通过错误一的结局方案得到,本质上获取jmethodID
env->CallStaticVoidMethod(myClass,postEventFromNativeID, result);

三、jni回调java中某个listener,c++中回调到jni中一个String,回调给java.

    jclass myClass= env->FindClass("com/example/hejunlin/Native");jfieldID mOnDataSourcePreparedListenerFieldId = env->GetFieldID(myClass,"mOnDataSourcePreparedListener","Lcom/example/hejunlin/Native$OnDataSourcePreparedListener;");jobject mOnDataSourcePreparedListener = env->GetObjectField(myObj, mOnDataSourcePreparedListenerFieldId);if(mOnDataSourcePreparedListener == nullptr) {LOG_INFO("Fail to find jobject");gJavaVM->DetachCurrentThread();return;}jmethodID onDataSourcePrepared = env->GetMethodID(myListenerClass, "onDataSourcePrepared", "(Ljava/lang/String;)V");jstring result = env->NewStringUTF(input_filename);env->CallVoidMethod(mOnDataSourcePreparedListener, onDataSourcePrepared, result);

jni问题总结:jni error (app bug): accessed stale local reference相关推荐

  1. 海康摄像头视频调用出错,Jni Error(app bug): accessed stale local reference解决办法

    项目中要在Android手机中调用海康摄像头拍摄的画面,在公司网管配置好了网络地址(不要与其他局域网内地址冲突)和端口,并激活摄像头设备后,通过SADPTool(海康提供的摄像头搜索工具)可以自动检索 ...

  2. Android之JNI ERROR (app bug): accessed stale global reference 0xb39533f2 (index 19708 in a table of s

    1.问题 2.原因 我在jni里面是这样写的 (*env)->CallVoidMethod(env, obj, method3, "chenyu"); 3.解决办法 把这个 ...

  3. JNI Local Reference Changes in ICS

    转:http://android-developers.blogspot.com/2011/11/jni-local-reference-changes-in-ics.html JNI Local R ...

  4. Android JNI学习(四)——JNI的常用方法的API

    前三篇主要讲解了jni基础相关的理论知识,今天主要讲解一下JNI的常用方法的API,掌握了基本的理论知识和常用的API接下来才能更好的实战. jni的常用API大纲 再看API前,我建议大家主要结合官 ...

  5. OpenCL ICD Loader运行测试暨解决报错:ERROR: App log and stub log differ.

    上一篇博文<OpenCL Installable Client Driver (ICD) Loader编译>详细描述了如何编译OpenCL ICD Loader.OpenCL ICD Lo ...

  6. Android JNI Attempt to remove non-JNI local reference, dumping thread

    Attempt to remove non-JNI local reference, dumping thread 解决办法: 去除Jni代码 env->DeleteLocalRef(javaO ...

  7. 报错 | error ‘App‘ is not defined no-undef

    error  'App' is not defined  no-undef 解决方法:在vue.config.js文件中写入以下代码,之后在npm run serve/dev就行(如果没有这个文件,就 ...

  8. JNI系列(一)JNI简介

    一.什么是JNI? 看下百度百科怎么说的: JNI是Java Native Interface的缩写,通过使用 Java本地接口书写程序,可以确保代码在不同的平台上方便移植.从Java1.1开始,JN ...

  9. message:Error app.json app.json 未找到 public

    message:Error app.json app.json 未找到 public 文档:message:Error app.json app.json 未?.. 链接

  10. Error: Could not link: /usr/local/share/doc/homebrew

    文章转自:http://c.n-di.com/2017/07/17/1827.html 版权归原作者! mac 执行brew update 报错 Error: Could not link: /usr ...

最新文章

  1. WCF之元数据交换 (Metadata Exchange)
  2. 搜索引擎蜘蛛为什么对网站不爬行呢?
  3. 一种基于FPGA 的1080p 高清多摄像头全景视频拼接的泊车(机)
  4. IPSec的安全性如何?—微云MPLS
  5. 异常:This application has no explicit mapping for /error.以及spring.mvc.view.prefix配置解决
  6. Java 并发编程之创建线程,启动和常用方法
  7. LeetCode(118)——杨辉三角(JavaScript)
  8. matlab俄罗斯方块说明,俄罗斯方块MATLAB版的代码
  9. 第十一届 蓝桥杯 省 模拟赛 试题+题解 C/C++描述
  10. 《动手学ROS2进阶篇》8.2RVIZ2可视化移动机器人模型
  11. 【ROS】中级操作学习整理-TF坐标变换
  12. 聚类 Cluster
  13. 英语学习资料下载大全
  14. python程序的控制结构思维导图_python学习之路2(程序的控制结构)
  15. Python数据类型——String
  16. 两个ListMap中同下标的map去重合并
  17. Linux操作系统下的一些简单网络配置命令
  18. 花里花哨惹人烦,PPT做到什么程度就够了?
  19. 火影推荐程序连载32-我是如何使用freemarker生成Word文件的?
  20. 多重派生及有子对象的构造函数

热门文章

  1. videojs学习随笔记录
  2. 一个简单的十年回顾及展望
  3. WEB测试与APP测试重点及区别
  4. 论文笔记_S2D.73_2019_BTS_从大到小:多尺度局部平面引导的单目深度估计
  5. 图像处理_形态学运算中的膨胀与腐蚀直观理解
  6. CVPR2018论文阅读-Faster MPN-COV:迭代计算矩阵平方根以快速训练全局协方差池化
  7. tf之 MessageFilter 与 tf::MessageFilter理解与应用
  8. 显著性测试(Friedman test, Post-hoc Nimenyi test以及可视化)
  9. ORB-SLAM3:一个用于视觉、视觉惯性和多地图SLAM系统
  10. java.lang.ClassFormatError