天天看點

關于cocos2dx移植到android上的方法

這裡就不講cocos2dxandroid環境搭建了,直接講移植了!

(環境搭建請參考http://blog.csdn.net/aa4790139/article/details/8086635#comments)

一)建一個Cocos2dx For  Android工程

這裡就不說步驟了,環境搭建好了,建工程就不是問題了,我這裡建的工程名是:MyGame;

二)移植前準備(我這裡要移植的工程名是FirstGame)

1、将FirstGame中Classes目錄和proj.win32目錄下的.cpp和.h檔案全部複制到MyProject中Classes目錄中(記住proj.win32目錄下的檔案不是你自己建的檔案就不要複制,如下圖)

關于cocos2dx移植到android上的方法

這裡我就隻需要複制GameOverScene.cpp和GameOverScene.h兩個檔案(其它的檔案如果複制了,不知道會不會出問題,我也沒試過,誰要是試過,可以告訴我,先謝謝了)

2、複制FirstGame中Resources目錄下的資源檔案(複制你項目中所要的)到MyProject中的Resources目錄中

3、修改MyProject\proj.android\jni中的Android.mk檔案

打開Android.mk 檔案找下圖地方:

關于cocos2dx移植到android上的方法

回想一下剛剛我在proj.win32目錄下複制的兩個檔案,在LOCAL_SRC_FILES :=項後模仿上面的方式加入GameOverScene.cpp,結果如圖:(如有其它自己建立的.cpp檔案也要如此)

關于cocos2dx移植到android上的方法

4、修改完後儲存,然後用Cygwin進入到MyProject/proj.android目錄下編譯檔案./build_native.sh,等編譯後,我的出了一個錯誤(in function dlfcn_pathbyaddr:(.text.dlfcn_pathbyaddr+0xe): error: undefined reference to ‘dladdr’)如下圖:

關于cocos2dx移植到android上的方法

我的做法是這樣的:在MyProject\proj.android\jni目錄下的Application.mk最後增加一行:APP_PLATFORM := android-8,儲存,再編譯一次,結果成功了!這個方法也是别人告訴我的,具體原因也清楚,還請知道的告訴我一聲!