Cocos2dx下使用JNI技术调用jar包里面的一些方法遇到的一些问题及解决方案
来源:互联网 发布:磊科nw360 mac驱动 编辑:程序博客网 时间:2024/05/07 06:05
情况一:JniHelper.h头文件无法找到
方法:需要添加附加包含目录即可解决问题。具体操作步骤如下:右击项目---->c/c++---->常规---->附加包含目录---->添加JniHelper.h所在的路径即可。此时可能还会遇到找不到jni.h和jni_md.h的问题,解决方案为在%JAVA_HOME%/include/下找到 jni.h,在%JAVA_HOME%/include/win32/下找到jni_md.h,复制到“Visual Studio目录/VC/include/”下,即可解决问题。
情况二:报类似的错。用那个函数,总是报错error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: static bool __cdecl cocos2d::JniHelper::getStaticMethodInfo(struct cocos2d::JniMethodInfo_ &,char const *,char const *,char const *)" (__imp_?getStaticMethodInfo@JniHelper@cocos2d@@SA_NAAUJniMethodInfo_@2@PBD11@Z),该符号在函数 "public: static class cocos2d::CCScene * __cdecl HelloWorld::scene(void)" (?scene@HelloWorld@@SAPAVCCScene@cocos2d@@XZ) 中被引用
方法:#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
******************
JNI的代码
***************
#endif
一定要加上平台判断语句。否则会出现以下bug。
情况三:提示在CCPlatformDefine.h文件中log.h: no such file or directory,即log.h找不到。
方法: 1.修改Android.mk文件配置,添加如下语句 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog 2.修改CCPlatformDefine.h文件 注释掉#include "log.h",添加#include "ALog.h"。 3.新建ALog.h文件,写入以下内容,并将其放置于与CCPlatformDefine.h所在的同一目录下。
最后想说的是:编写供c++调用的java方法,如果是第三方jar里面的方法的话,建议用Handler去触发,让其处于在UI线程中运行,否则可能出错。
Cocos新手学习必备源码啊,大量本人写的的源码(有些商业的淘宝店木有放出来,可以私聊),ARPG,动作射击,闯关益智,可学习可运营 个人淘宝店,适合新手,我还可以做技术支持,帮助换皮,带新手等https://shop141567464.taobao.com/?spm=a313o.7775905.1998679131.d0011.pzUIU4
不懂的可以加我的QQ群: 239982941(cocos2d-x 3.x学习群)欢迎你的到来哦,看了博文给点脚印呗,谢谢啦~~
- Cocos2dx下使用JNI技术调用jar包里面的一些方法遇到的一些问题及解决方案
- 11.Cocos2dx2.2下使用JNI技术调用jar包里面的一些方法遇到的一些问题及解决方案。
- 转载:.Cocos2dx2.2下使用JNI技术调用jar包里面的一些方法遇到的一些问题及解决方案。
- myeclipse 遇到的一些问题及解决方案
- myeclipse 遇到的一些问题及解决方案
- myeclipse 遇到的一些问题及解决方案
- PCL:遇到的一些问题及解决方案
- 关于VS 使用GDB工具调试ADT下JNI时遇到的一些问题的解决
- cocos2dx 项目拷贝遇到的一些问题
- android使用CMake进行jni编写遇到的一些问题
- android+eclipse+jni遇到的一些问题
- .Net开发工作中常遇到的一些问题及解决方案
- Oracle安装过程中遇到的一些问题及解决方案
- Win2003下面安装SQLSERVER2000遇到的一些问题及解决方案
- 用angularjs遇到的一些问题及解决方案
- 运行hadoop程序遇到的一些问题及解决方案
- react-native里TextInput遇到的一些问题及解决方案
- hbase测试过程中遇到的一些问题及解决方案
- Linux多线程入门:模拟一个售票系统
- KeepAlive
- zen mode
- 你可能不知道的一些JavaScript 奇技淫巧
- 2015年04月23日学习情况
- Cocos2dx下使用JNI技术调用jar包里面的一些方法遇到的一些问题及解决方案
- Lucene使用(二)示例
- URAL 2041 Nanomatryoshkas(贪心)
- Construct Binary Tree from Inorder and Postorder Traversal
- UIKit框架-高级控件Swift版本: 10.UIWebView方法/属性详解
- 逻辑接口介绍
- php学习要点
- Response.WriteFile()文件流输出与迅雷冲突的解决办法
- Construct Binary Tree from Preorder and Inorder Traversal