cocos2dx-2.x的eclipse打包apk



必备安装环境:java jdk安装以及环境变量,python运行环境

cocos2dx 2.2.2版本是通过python脚本创建的,脚本位置:cocos2d-x-2.2.2\tools\project-creator\create_project.py;

这里可以写个批处理文件来方便创建;createProject.bat

复制代码
@echo off
:label1
@cls
echo 欢迎使用Python创建Cocos2d-x工程
set /p project=请输入需要创建的工程名:
set /p aID=请输入需要创建的android版本包标识名:
echo 您输入的工程名为%project%
echo 您输入的android版本包标识名为%aID%
echo 确认创建工程吗?
CHOICE /C 123 /M "确认请按 1,取消请按 2,或者退出请按 3。"
echo %errorlevel%
if %errorlevel%==1 goto label2
if %errorlevel%==2 goto label1
if %errorlevel%==3 goto label3
:label2
echo 正在创建工程...
python create_project.py -project %project% -package %aID% -language cpp
:label3
pause
复制代码

运行批处理,根据提示,创建出项目;

复制代码
欢迎使用Python创建Cocos2d-x工程
请输入需要创建的工程名:test02
请输入需要创建的android版本包标识名:com.hugh.test
您输入的工程名为test02
您输入的android版本包标识名为com.hugh.test
确认创建工程吗?
确认请按 1,取消请按 2,或者退出请按 3。 [1,2,3]?1
1
正在创建工程...
proj.ios                : Done!
proj.android            : Done!
proj.win32              : Done!
proj.winrt              : Done!
proj.wp8                : Done!
proj.mac                : Done!
proj.blackberry         : Done!
proj.linux              : Done!
proj.marmalade          : Done!
proj.tizen              : Done!
New project has been created in this path: I:\cocosx\cocos2d-x-2.2.2\tools\proje
ct-creator/../../projects/test02
Have Fun!
请按任意键继续. . .
复制代码

 

 那么在cocos2d-x-2.2.2\projects\test02\proj.android 目录已经生成了android项目

项目的c++文件类都在Classes目录下

需要把这些c++文件放到android项目的jni目录下

上面的main.cpp是先去项目生成时自动生成的,不能把win32项目的main.cpp拷到此处啊,这是java jni 调用相关的。

接下来把需要编译的所有类都加入到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

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

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

include $(BUILD_SHARED_LIBRARY)

$(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)
复制代码

就是需要让程序知道我们的c++文件放在哪,这里我们可以改下:

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   hellocpp/AppDelegate.cpp \
                   hellocpp/HelloWorldScene.cpp

其实不改也行,文件上上层的Classes目录本来就有这些文件,只是要明白这个道理;

下面需要把cocos2dx对于android平台支持的代码拷到我们的工程项目里面,文件目录在cocos2d-x-2.2.2\cocos2dx\platform\android\java\src下;

 

org目录下的文件就是cocos2dx对android平台接口支持相关的,我们把它拷到项目的src目录下:

 到这里预备工作就做的差不多了,下面就可以用eclipse加载该项目了

当然项目肯定会报错,编译参数我们还没设呢!

首先我们得选定平台的sdk

确定后编辑器就生成了android项目所需要的gen目录了

对比下项目刚打开的样子,是不是生成了久违的gen目录啊 ,成功在望啊!

这时候项目的报错就不多了,我们看下:

这是项目编译报错,看到bash应该知道他是运行了错误的编译环境,bash 是linux的,我们看下配置确认下

是不是啊,运行的是linux下的脚本,我们得把它改成windows平台对应的就行。

我们把它改成I:\cocosx\android-ndk-r9d\ndk-build.cmd这个,用ndk-build.cmd来编译。

下面我们需要配几个参数了:

COCOS2DX 参数,设定cocos目录,I:\cocosx\cocos2d-x-2.2.2

NDK_ROOT参数,设定ndk目录,I:\cocosx\android-ndk-r9d

NDK_MODULE_PATH参数,设定ndk jni需要调用的目录,I:\cocosx\cocos2d-x-2.2.2;I:\cocosx\cocos2d-x-2.2.2\cocos2dx\platform\third_party\android\prebuilt

 

 还剩下一个参数了,直接上图:

好了,编译环境已经设立完了,我们清理下,看有没有报错:

看,已经没有报错了!接下来就处理资源了,还没忘吧!

android项目下没有自动生成assets目录,我们就只有手动创建该目录,然后把Resources目录下的资源拷过来

好了,接下了就去编译了!

这是一个漫长的过程!

看到这里,我们需要的库就已经编好了,接下来就打包了,这就没啥可讲的了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值