Java JNI本地引用表溢出,查看引用表的完整内容

Java JNI本地引用表溢出,查看引用表的完整内容,java,android,java-native-interface,rhomobile,rhodes,Java,Android,Java Native Interface,Rhomobile,Rhodes,在运行我用rhomobile构建的android应用程序几分钟后,我遇到了一个JNI错误(应用程序错误)本地引用表溢出(max=512) 该表的最后10个输出项都是Json rpc字符串: java.lang.String "{"jsonrpc": "2.0... (43 chars) 或者有时47个字符 我不知道这个错误是从哪里来的,所以一个好的开始应该是查看整个字符串对象(所以…部分) 这能实现吗?如果是,如何实现 编辑: 在溢出之前,我每隔一段时间就会收到以下消息 art Attempt

在运行我用rhomobile构建的android应用程序几分钟后,我遇到了一个
JNI错误(应用程序错误)本地引用表溢出(max=512)

该表的最后10个输出项都是Json rpc字符串:

java.lang.String "{"jsonrpc": "2.0... (43 chars)
或者有时47个字符

我不知道这个错误是从哪里来的,所以一个好的开始应该是查看整个字符串对象(所以…部分)

这能实现吗?如果是,如何实现

编辑

在溢出之前,我每隔一段时间就会收到以下消息

art Attempt to remove local handle scope entry from IRT, ignoring

如何找出未删除的本地句柄?

结果表明,rhomobiles API在查询电池状态、启用条形码扫描和捕获关键事件时出错


我通过升级到rhodes 5.2.2解决了Android 4.0.4设备上的问题。然而,升级对我的另一台运行安卓5的设备没有帮助。作为对我在motorola rhodes讨论中的帖子的回答,我被告知他们正在为5.3 rhodes版本解决这个问题,因此我希望将来能解决这个问题。

搜索“本地参考表溢出”或“DeleteLocalRef”。我记得我发布了一些帖子,这些帖子将提供一些线索来对付这个bug,但是您可能无法控制需要修复的代码。(但如果是开源的…)谢谢,但我已经读过了。正如你所说,它来自我无法控制的代码。我的想法是,如果我能看到这些字符串中的内容,我就能看到导致溢出的原因。那么,有没有办法扩展这些“…”?PushLocalFrame()/PopLocalFrame()?您的代码是否调用了一个运行数分钟的Java函数?如果是,您可能需要重构它,让Java调用Java。在本机调用之间保留本机结构是可能的,至少据我所知不是这样。可能罗兹是在后台做的。即使我排除了我的Java本机扩展(所以只使用js),也会出现错误:(我对这个错误非常迷茫。无论如何,谢谢你的想法