前言
上次已經順利的把所需要的環境都搭建完成了,下一步就是要建立具體的項目,然後開始學習
建立一個Android項目
開啟Cocos2d-x的項目所在的路徑,可以看到一堆項目的模板,我們要用的就是其中的 create-android-project.bat
這是個批次程式,在開始執行之前,首先需要做一下修改,用Editplus等文字編輯器開啟檔案,找到如下幾行代碼
:: modify it to work under your environment set _CYGBIN=E:\andriod\cygwin\binif not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & pause & exit 4:: modify it to work under your environmentset _ANDROIDTOOLS=E:\andriod\androidsdk\toolsif not exist "%_ANDROIDTOOLS%" echo Couldn't find android sdk tools at "%_ANDROIDTOOLS%" & pause & exit 5:: modify it to work under your environmentset _NDKROOT=E:\andriod\android-ndk-r8dif not exist "%_NDKROOT%" echo Couldn't find ndk at "%_NDKROOT%" & pause & exit 6
三個set_% 分別代表 cygwin, android sdk 和ndk的路徑,按照自己的安裝路徑設定即可,上面是我設定好了的。
儲存,退出。
還差一步,cocos2d-x有個問題,不會自動拷貝過去cocos2d-x 庫,所以直接建立後面會出問題。需要修改一下項目模板。
今天下了個最新的cocos2d-2.0-x-2.0.3版本下來,才發現裡面的模板設定與我寫這個文章的時候不一樣了,這個沒有發現lib的原因是在這個版本,這個lib的java檔案放到了cocos2d-2.0-x-2.0.3\cocos2dx\platform\android\java\src這個檔案按夾下了,而不是tests\proj.android\src\org\cocos2dx\lib這個了,且不知道是不是寫模板的指令碼的bug,cocos2d-2.0-x-2.0.3\template\android這個路徑下的copy_files.sh指令碼,COCOSJAVALIB_ROOT這個變數所指的路徑就是那個lib的java路徑,而在copy_src_and_jni()這個函數裡面,居然沒有調用複製,所以在這個函數裡面加一句cp -rf $COCOSJAVALIB_ROOT/src $APP_DIR/proj.android就可以了。
這次真的是好了,雙擊執行,輸入要建立的項目資訊,以及target sdk version.
注意:如果你是win7/8的使用者,從這步開始,許可權問題會不斷的困擾你,建議直接開啟管理員賬戶,省去無數煩惱,操作方法請點擊 連結
或者你可以參考 這篇文章 一點點的設定.
建立完成之後,cocos2d-x目錄下就會多了一個按照你的project Name命名的檔案夾,開啟它有三個目錄,
Resources是遊戲的資源,Classes是項目共有的類,proj.android是編譯成安卓項目所需的檔案,對應的還有很多很多...
在編寫的時候,只要保證遊戲的邏輯資源都在Classes目錄,然後根據不同的平台,分別執行編譯命令,就可以得到對應的App了。這就是cocos2d-x的妙處啊。
一開始不瞭解,還以為只是簡簡單單的不同平台文法相同呢,罪過啊罪過。
執行編譯
編譯就需要用到cygwin了,前面一直沒有說,cygwin是一款交叉編譯工具,所謂交叉編譯,就是在一個平台上編譯針對於另一個平台的代碼。
拿我們這個為例,在Windows下編譯Android的項目,當然就是交叉編譯啦。
開啟cygwin,進入建立的demo的android專案檔夾,如
註:linux核心的 目錄 沒有windows下的 ’\‘ ,都是 ’/‘ , 需要注意自己替換。
完成之後,斷行符號,開始編譯,這個時間比較長,我先接杯水,為一會兒阿森納vs曼城 做一下準備,吼吼~
好了,出現上面的圖就說明完成了,現在開啟eclipse, 建立一個android工程,選擇 ”Android project from existing code“ ,然後定位到我們的項目名那一級目錄即可,比如我的是 “Demo”
添加完成之後,編譯,運行,cocos2d-x的 "吉祥物" 就出現啦。(需要說明的是,為了減少不必要的麻煩,我沒有用模擬器,直接上的真機,各位習慣於用模擬器的請搜尋android開發教程中的模擬器的建立和使用)
工程建立至此完成,下周開始搞一個簡單的遊戲,並部署我的粗糧手機上。
QQ: 631767297 歡迎朋友們可以一起交流學習。