【COCOS2D-X 备注篇】ASSETMANAGEREX使用异常解决备注->CHECK_JNI.CC JNI DETECTED ERROR IN APPLICATION: JNI NEWGLOBALREF CALLED WITH PENDING EXCEPTION ‘JAVA.LANG.NOCLA

简介:
本站文章均为  李华明Himi 原创,转载务必在明显处注明: 
转载自【黑米GameDev街区】 原文链接:  http://www.himigame.com/iphone-cocos2dx/1928.html

最近使用cocos2dx 3.9版本的时,尝试了使用AssetManagerEx, 非Ex是早期版本,因为是新的扩展所以尝试下。确实挺好用的,基本的流程和对比以及下载等功能都有的。

具体怎么用不用我说了,应该网上一大堆,现在说下遇到的问题。

我一共写了两种形式:

一种是c++自己简易封装AssetManagerEx,然后把我的类通过tolua binding到lua来使用,iphone测试通过,没问题。

另外一种是使用lua版官方binding好的AssetManagerEx的版本测试使用,iphone测试通过,没问题。

 

重点来了,当我不论哪种形式编译到Android后,并且配置好项目(引入android/java/src 以及 android/java/libs/android-async-http-x.x.x.jar)运行Android项目,总是出现如下两个问题:

cpp QQ20160113-0

出现这问题,我一开始以为是ndk的版本问题或者android下的android.mk没有添加扩展包的lib进行参与编译。而且还将cocos2dx-3.9的官方test-cpp/lua编译到android运行,发现都仍然继续报如图的错误。

通过同事的一句话提醒,我恍然大悟了。其实是Himi对Android这边开发相比较而言少了很多。jar的引入,我引入有问题造成的。

   后来我通过如下步骤重新引入android-async-http-x.x.x.jar得以解决:

     右键android项目下的libs->import->General->File System->Browse…
          * 此jar包在项目下的 cocos2dx/cocos/platform/android/java/libs
     选中如上路径->选中libs->Finish

 

有时候问题比较简单,反而想的过于复杂。引用我同事一句话“错误不写了 java.lang.NoClassDefFoundError  么” 哈哈哈。当然虽然说解决方式很简单,但是也是Himi对Android开发的一些细节的遗忘造成的~ 还是需要复习一下功课才行啊~


相关文章
|
2月前
|
Java
在 Java 中捕获和处理自定义异常的代码示例
本文提供了一个 Java 代码示例,展示了如何捕获和处理自定义异常。通过创建自定义异常类并使用 try-catch 语句,可以更灵活地处理程序中的错误情况。
92 1
|
2月前
|
Java API 调度
如何避免 Java 中的 TimeoutException 异常
在Java中,`TimeoutException`通常发生在执行操作超过预设时间时。要避免此异常,可以优化代码逻辑,减少不必要的等待;合理设置超时时间,确保其足够完成正常操作;使用异步处理或线程池管理任务,提高程序响应性。
129 12
|
2月前
|
Java
在 Java 中,如何自定义`NumberFormatException`异常
在Java中,自定义`NumberFormatException`异常可以通过继承`IllegalArgumentException`类并重写其构造方法来实现。自定义异常类可以添加额外的错误信息或行为,以便更精确地处理特定的数字格式转换错误。
49 1
|
12天前
|
Java Windows
【Azure Function】部署Java Function失败:报错deploy [ERROR] Status code 401和警告 'China North 3' may not be a valid region
1:deploy [ERROR] Status code 401, (empty body). 2: China North 3 may not be a valid region,please refer to https://aka.ms/maven_function_configuration#supported-regions for values. 3:  <azure.functions.maven.plugin.version>1.36.0</azure.functions.maven.plugin.version>
26 11
|
1月前
|
JSON Java 数据格式
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
94 25
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
|
2月前
|
IDE 前端开发 Java
怎样避免 Java 中的 NoSuchFieldError 异常
在Java中避免NoSuchFieldError异常的关键在于确保类路径下没有不同版本的类文件冲突,避免反射时使用不存在的字段,以及确保所有依赖库版本兼容。编译和运行时使用的类版本应保持一致。
101 7
|
2月前
|
Java 编译器
如何避免在 Java 中出现 NoSuchElementException 异常
在Java中,`NoSuchElementException`通常发生在使用迭代器、枚举或流等遍历集合时,尝试访问不存在的元素。为了避免该异常,可以在访问前检查是否有下一个元素(如使用`hasNext()`方法),或者使用`Optional`类处理可能为空的情况。正确管理集合边界和条件判断是关键。
116 6
|
2月前
|
Java
Java异常捕捉处理和错误处理
Java异常捕捉处理和错误处理
76 1
|
监控 IDE Java
Java 处理 Exception 的 9 个最佳实践!
在Java中处理异常并不是一个简单的事情。
|
15天前
|
监控 Java
java异步判断线程池所有任务是否执行完
通过上述步骤,您可以在Java中实现异步判断线程池所有任务是否执行完毕。这种方法使用了 `CompletionService`来监控任务的完成情况,并通过一个独立线程异步检查所有任务的执行状态。这种设计不仅简洁高效,还能确保在大量任务处理时程序的稳定性和可维护性。希望本文能为您的开发工作提供实用的指导和帮助。
72 17