cocos2d-x最新版本環境搭建
現在cocos2d-x已經更新到3.14.1版本了,google也不維護ADT bundle了,大力在維護Android Studio,於是花時間研究一下新的引擎的環境怎麼搭建,我是win7 64位系統。
第一步:下載需要的工具並安裝
cocos2d-x最新版本 http://www.cocos2d-x.org/ ,下載後解壓,例如我在D盤 D:\cocos2d-x-3.14.1
安裝最新JDK
下載android studio 2.3 ,然後安裝
安裝python並新增安裝路徑到環境變數Path中
VS2015企業版
第二步:新建專案
進入cocos2d 解壓後的tools\cocos2d-console\bin目錄
python cocos.py new xxx -p com.hh.xxx -l cpp -d E:\MyWorkspace
第三部:win32模擬器執行
新建專案後,用VS2015開啟proj.win32/xxx.sln編譯,
如果提示錯誤“無法載入mspdb140.dll
可以嘗試解決方案:http://blog.csdn.NET/feijitouhaha/article/details/52862685
如果編譯通過,則執行可以看到
第四步:android真機執行
首先下載gradle3.3,然後解壓到android studio的安裝目錄,C:\Program Files\Android\Android Studio\gradle
gradle-3.2是android studio自帶的,是不行的,坑啊,必須要3.3以上。
另外一個坑:如果是第一次安裝andrtoid studio,則載入專案的時候經常會遇到一直卡在“Building XXX Gradle Project Info”的問題
解決辦法就是拷貝gradle-3.3-all.zip到目錄C:\Users\使用者名稱\.gradle\wrapper\dists\gradle-X.XX-all\[一長串隨機的字串]\
關閉android studio,重新開啟專案就ok了。
然後修改新建工程的相關的配置資訊:
修改新建的工程jni/Application.mk,在最開始的地方新增:
APP_PLATFORM := android-9
否則5.0以下的真機可能會閃退
然後修改proj.android-studio/build.gradle
修改gradle/wrapper/gradle-wrapper.properties
proj.android-studio/app/build.gradle 和 cocos2d\cocos\platform\android\libcocos2dx\build.gradle修改如下:
為了支援NDK自動編譯,在proj.android-studio/app/build.gradle最後的位置新增:
task ndkBuild(type: Exec) {
def ndkDir = android.ndkDirectory
commandLine "$ndkDir/ndk-build.cmd"
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn 'ndkBuild'
}
上面的修改後,就可以用android studio開啟工程了,路徑就是XXX/proj.android-studio
開啟之後設定一下gradle路徑 File->Setting
如果android studio 從來沒有下載過NDK相關的,則需要下載NDK,
選擇SDK Tools安裝CMake ,LLDB,NDK
注意:如果碰到沒有看到上面的相關列表,可能是網路設定問題, 網上有的方案說要修改C:\WINDOWS\system32\drivers\etc\HOSTS
新增 "203.208.46.146 dl.google.com"等資訊,而我的恰恰相反,註釋掉之後就好了,如下:
如果你也遇到這樣的問題,可以嘗試下我的方法,也許就可以了。
最後,編譯工程,編譯成功之後插入手機
安裝到手機,執行的情況跟win32模擬器一樣,環境搭建完成!!!
其他問題:
如果編譯NDK的時候遇到錯誤:error: relocation overflow in R_ARM_THM_CALL,多半是因為預設編譯是Thumb指令集,要設定成arm的型別(他們的區別可以參考http://blog.csdn.net/itismine/article/details/4753701)
解決方式:可以試試在工程的Android.mk中新增 LOCAL_ARM_MODE := arm
第五步:指令碼打包Apk
如果上面的步驟都ok,那麼只要設定一下環境變數就可以指令碼直接打包了,畢竟android studio每次編譯太慢了。
新增gradle-3.3/bin的路徑到環境變數Path中,例如我的路徑在:C:\Program Files\Android\Android Studio\gradle\gradle-3.3\bin
最後確認一下proj.android-studio/local.properties檔案中sdk和ndk的路徑有沒有配置(android studio會自動設定):
然後cd 專案路徑/proj.android-studio
gradle aR
第一次會比較耗時,因為會下載很多依賴庫,
編譯成功就會再proj.android-studio\app\build\outputs\apk目錄下生成apk檔案。
如果生成的apk是unsigned的,表示沒有簽名,只要添加簽名相關的資訊就ok了,在proj.android-studio/gradle.properties檔案中新增:
RELEASE_STORE_FILE=D:\\MyWorkspace\\KeyStore\\xxx.key
RELEASE_STORE_PASSWORD=密碼
RELEASE_KEY_ALIAS=xxx
RELEASE_KEY_PASSWORD=密碼
再次gradle aR,就生成帶簽名的apk了,然後就可以安裝到真機了。
參考:http://blog.csdn.net/wu928320442/article/details/51226097