【发布时间】:2014-07-17 10:27:11
【问题描述】:
我正在尝试将 JNI 添加到我的项目中,但出现链接器错误:
Error 1 error LNK2019: unresolved external symbol
"__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)referenced in function _callEndGame AndroidJNI_EndGameDelegate.obj Proj.win32
libcocos2d.lib里面没有这个函数是因为cocos2d-win32.vc2012.sln项目没有编译cocos2d-x-2.2.4\cocos2dx\platform\android文件夹。
我该如何解决?
【问题讨论】:
-
你是从 Visual Studio 为 Anrdoid 构建的吗?
-
这部分我正在使用 VS 构建,但 JNI 调用位于项目的公共非 android 部分。我应该把它移到android部分吗?这是一些细节discuss.cocos2d-x.org/t/jnihelper-lib-is-missing/15618
-
是的,您应该只使用 JNI for Android。我不知道您为什么还要在项目中使用 Java 代码。
-
有人可以给我使用 JNI 的工作示例项目吗?
-
cocos2d-x 项目本身就是我使用的。在 cocos2d-x 文件夹中去
cocos2dx -> platform -> android看看他们是怎么做的。
标签: android c++ java-native-interface cocos2d-x