天天看點

Cocos移植到Android-使用Eclipse交叉編譯打包

如果對指令行望而生畏我們可以借助于安裝有adt插件的eclipse工具實作交叉編譯。

使用eclipse進行交叉編譯首先需要将要編譯的工程導入到eclipse的workspace中workspace是多個工程的集合。具體步驟是啟動eclipse後選擇菜單file→new→project彈出如圖21-18所示的建立工程對話框選擇android→android project from existing code。

Cocos移植到Android-使用Eclipse交叉編譯打包

 建立工程對話框在建立工程對話框中點選next按鈕彈出如下圖所示的導入工程對話框點選browse按鈕彈出後面所示的選擇目錄對話框注意選擇目錄是“<遊戲工程路徑>\proj.android”在這個目錄下有建立eclipse的android工程所需要的檔案。

Cocos移植到Android-使用Eclipse交叉編譯打包

導入工程對話框

Cocos移植到Android-使用Eclipse交叉編譯打包

選擇目錄對話框選擇好目錄後點選确定按鈕關閉對話框回到導入工程對話框如下圖所示在root directory已經有内容了。如果沒有報錯說明選擇工程成功了。注意我們不要選中copy projects into workspace選項。選擇完成後點選finish按鈕。

Cocos移植到Android-使用Eclipse交叉編譯打包

選擇工程成功然而點選finish後eclipse導入并編譯工程編譯完成時候會發現有很多錯誤如下圖所示。經過研究不難發現引起這些錯誤的原因是找不到cocos2d-x在android平台的java類這些類位于<遊戲工程路徑>\cocos2d\cocos\2d\platform\android\java目錄下我們要麼把這個目錄下的java檔案拷貝到目前工程的src目錄要麼導入cocos2d-x android java類庫工程。

Cocos移植到Android-使用Eclipse交叉編譯打包

編譯錯誤導入cocos2d-x android java類庫工程的操作步驟與前面導入遊戲工程是類似的選擇的路徑是<遊戲工程路徑>\cocos2d\cocos\2d\platform\android\java。如下圖所示是成功導入的libcocos2dx工程。

Cocos移植到Android-使用Eclipse交叉編譯打包

成功導入libcocos2dx工程提示 很多讀者會問隻是導入libcocos2dx工程遊戲工程mygame就可以找到需要的java類檔案嗎這是因為在mygame工程中有一個project.properties檔案在這個檔案中的android.library.reference.1=../cocos2d/cocos/2d/platform/android/java設定項描述了兩個工程之間的依賴關系。

兩個工程在eclipse裡編譯成功并不代表這遊戲工程已經進行了交叉編譯我們需要執行<遊戲工程路徑>\proj.android\build_native.py進行交叉編譯生成.so檔案。執行build_native.py可以通過dos終端進入所在目錄build_native.py執行可以在eclipse裡輕按兩下build_native.py執行執行過程如下圖所示。

Cocos移植到Android-使用Eclipse交叉編譯打包

執行build_native.py交叉編譯如果執行build_native.py交叉編譯成功後我們還需要在eclipse中選擇mygame工程按f5鍵重新整理工程否則在工程中看不到如下圖所示libcocos2dcpp.so檔案。

Cocos移植到Android-使用Eclipse交叉編譯打包

libcocos2dcpp.so檔案

交叉編譯成功就可以打包運作了選擇mygame工程右鍵菜單run as → android application然後選擇要打包和運作的模拟器或android裝置就可以了。

更多内容請關注最新cocos圖書《cocos2d-x實戰 c++卷》‍

歡迎加入cocos2d-x技術讨論群257760386

《cocos2d-x實戰 c++卷》現已上線各大商店均已開售‍

《cocos2d-x實戰 c++卷》源碼及樣章下載下傳位址

歡迎關注智捷ios課堂微信公共平台

Cocos移植到Android-使用Eclipse交叉編譯打包