我CCHttpRequest
在作为 Cocos2d-x 项目一部分的 Android 应用程序中使用时遇到问题。具体来说,我在 Eclipse 中构建时遇到了一堆构建错误,而在 Xcode 中构建 iOS 应用程序时却没有。
我在 Eclipse(但在 Xcode 中没有)收到的示例构建错误是:
`Type 'CCHttpResponse' could not be resolved`
此错误适用于以下行:
CCHttpResponse *response = (CCHttpResponse *)data;
Eclipse 和 Xcode 项目都引用相同的.cpp
文件。为了让 Eclipse 项目了解 Cocos2d-x 扩展,我执行了以下操作:
- 打开项目 => 属性 => C/C++ 常规 => 路径和符号 => 源位置
- 点击
Link Folder...
- 查看
Link to folder in the file system
- 浏览到包含扩展的文件夹(在 Xcode 项目中工作)
- 单击确定、应用和确定
HelloWorldScene.cpp
请注意,我的文件中还有一些其他令人惊讶的错误。例如:
Symbol 'vector' could not be resolved
.
我猜这个问题与我在 Eclipse 中的设置方式有关。由于我是 Eclipse 新手,我不确定该尝试什么。一切都在 Xcode 项目中构建和运行良好。
编辑#1:在注释了大部分 Eclipse 构建错误的代码后,我注意到了错误:
`make: *** [obj/local/armeabi/libgame.so] Error 1`
我不知道这意味着什么,但似乎它可能是比未解决的符号更根本的错误。
安卓.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := game_shared
LOCAL_MODULE_FILENAME := libgame
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/HelloWorldScene.cpp \
../../Classes/StringHelper.cpp
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static cocos_extension_static
include $(BUILD_SHARED_LIBRARY)
$(call import-module,CocosDenshion/android) \
$(call import-module,cocos2dx) \
$(call import-module,extensions)
应用程序.mk
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -DCOCOS2D_DEBUG=1