前言
上次已經順利的把所需要的環境都搭建完成了,下一步就是要創建具體的項目,然后開始學習
創建一個Android項目
打開Cocos2d-x的項目所在的路徑,可以看到一堆項目的模板,我們要用的就是其中的 create-android-project.bat
這是個批處理程序,在開始執行之前,首先需要做一下修改,用Editplus等文本編輯器打開文件,找到如下幾行代碼
:: modify it to work under your environment
set _CYGBIN=E:\andriod\cygwin\bin
if not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & pause & exit 4
:: modify it to work under your environment
set _ANDROIDTOOLS=E:\andriod\androidsdk\tools
if not exist "%_ANDROIDTOOLS%" echo Couldn't find android sdk tools at "%_ANDROIDTOOLS%" & pause & exit 5
:: modify it to work under your environment
set _NDKROOT=E:\andriod\android-ndk-r8d
if 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 歡迎朋友們可以一起交流學習。