准备条件:
1、JDK7(一般都自带JRE7了)以及JRE7。
2、VS 2013(如果想要在PC上运行的话,需要安装)。
3、NDK-r9(注意32位和64位)。
4、Eclipse。
5、Android SDK以及ADT插件。
6、Cygwin(最好是最新版)。
7、Python2.7。
8、Cocos2d-x-2.2.5。
9、一个cocos2d-x游戏项目(airplaneward.rar这个源码不能给)。
10、Iconv字库(见附件iconv.rar,附件超过2M了,不能上传,有需要的朋友Q我)。
第一步:将airplaneward.rar解压到Cocos2d-x-2.2.5/projects目录下。
第二步:将iconv.rar解压到Cocos2d-x-2.2.5目录下。
第三步:新建Android.mk文件到解压后的iconv中,代码如下:
LOCAL_PATH:= $(call my-dir)
#libiconv.so
include $(CLEAR_VARS)
LOCAL_MODULE := iconv_static
LOCAL_MODULE_FILENAME := libiconv
LOCAL_CFLAGS := -Wno-multichar \
-DAndroid \
-DLIBDIR="c" \
-DBUILDING_LIBICONV \
-DIN_LIBRARY
LOCAL_SRC_FILES := libcharset/lib/localcharset.c \
lib/iconv.c \
lib/relocatable.c
LOCAL_C_INCLUDES += $(LOCAL_PATH)/include \
$(LOCAL_PATH)/libcharset \
$(LOCAL_PATH)/lib \
$(LOCAL_PATH)/libcharset/include \
$(LOCAL_PATH)/srclib
include $(BUILD_STATIC_LIBRARY)
第四步:打开Eclipse,导入依赖工程:cocos2d-x-2.2.5\cocos2dx\platform\android\java。
第五步:将airplaneward目录下的android工程导入。
第六步:修改jni中的Android.mk,如下:。
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := cocos2dcpp_shared
LOCAL_MODULE_FILENAME := libcocos2dcpp
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/HelloWorldScene.cpp\
../../Classes/airplane.cpp\
../../Classes/bullet.cpp\
../../Classes/bomb.cpp\
../../Classes/addPlane.cpp\
../../Classes/prop.cpp\
../../Classes/popupDialog.cpp\
../../Classes/LogIn.cpp\
../../Classes/gameover.cpp
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../Classes\
LOCAL_C_INCLUDES += \
$(LOCAL_PATH)/../../../../iconv/include \
$(LOCAL_PATH)/../../../../iconv/libcharset \
$(LOCAL_PATH)/../../../../iconv/lib \
$(LOCAL_PATH)/../../../../iconv/libcharset/include \
$(LOCAL_PATH)/../../../../iconv/srclib \
$(LOCAL_PATH)/../../../../iconv
LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
LOCAL_WHOLE_STATIC_LIBRARIES += chipmunk_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static
LOCAL_WHOLE_STATIC_LIBRARIES += iconv_static
include $(BUILD_SHARED_LIBRARY)
$(call import-add-path,D:/cocos2d-x-2.2.5)
$(call import-add-path,D:/cocos2d-x-2.2.5/cocos2dx/platform/third_party/android/prebuilt)
$(call import-module,cocos2dx)
$(call import-module,cocos2dx/platform/third_party/android/prebuilt/libcurl)
$(call import-module,CocosDenshion/android)
$(call import-module,extensions)
$(call import-module,external/Box2D)
$(call import-module,external/chipmunk)
$(call import-module,iconv)
第七步:配置工程中的参数。右键工程-->Properties-->Buliders-->选择右边窗口中的New_Builder,如图7-1(实际情况还得根据你导入的游戏工程):
双击这个“New_Bulider”,参考图7-2中的配置:
这里主要是对main标签作配置,其它标签可忽略或者根据你的喜好配置一下也行,我觉得没什么影响。
再接着,把C/C++ Builder也修改一下,如图7-3:
第八步:如果你的环境没有配置好的话,是不能顺利编译的。请检查你的NDK环境变量、Cocos2d-x环境变量以及Cygwi\home\用户名下的.bash_profile文件的修改,主要是添加两行代码:
NDK_ROOT=/cygdrive/d/eclipse-java-indigo-win32/eclipse/android-ndk-r9
export NDK_ROOT
上面的NDK_ROOT名字可自己取名,使用时名字一致即可。
第九步:Clean工程,等待编译出错吧!呵呵。因为每个人的实际环境不太一样,出错总是难免的,遇到错误不用着急,根据错误信息解决问题即可。其中印象最深的是报std有一个成员函数不可用,只要加个头文件就行,名字记不全了,是一个运算头文件,大家遇到错误的时候百度即可。
第十步:编译完成后,导出APK,完工!
如有疑问可联系QQ:250215260
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。