Win7 64位中文旗艦版上Cocos2d-x 3.0的Android開發調試環境架設

本文部分參考了:http://blog.csdn.net/sttyytw/article/details/17005263

 

系統環境:

Win7 64位中文旗艦版

 

各組件的版本:

VS2012

Python2.7.6 x86

Cygwinx64         http://cygwin.com/setup-x86_64.exe

Cocos2d-x 3.0     http://www.cocos2d-x.org/download

JDK1.8 x64         http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

AndroidSDK ADT Bundle x64 20140321           https://dl.google.com/android/adt/22.6.2/adt-bundle-windows-x86_64-20140321.zip

AndroidNDK r9d x64             https://dl.google.com/android/ndk/android-ndk-r9d-windows-x86_64.zip

Ant1.9.3              http://mirror.esocc.com/apache//ant/binaries/apache-ant-1.9.3-bin.zip

VisualGDB 4.1r10      http://visualgdb.com/download/VisualGDB-4.1r10-trial.msi

 

安裝步驟:

1.    默認安裝VS2012

2.    默認安裝Python 2.7.6,修改環境變量Path

wmic ENVIRONMENT where"name='path' and username='<system>'" setVariableValue="%path%;C:\Python27"

3.    默認安裝JDK 1.8,修改環境變量Path,增加環境變量JAVA_HOME、CLASSPATH

wmic ENVIRONMENT createname="JAVA_HOME",username="<system>",VariableValue="C:\ProgramFiles\Java\jdk1.8.0_05"

wmic ENVIRONMENT createname="CLASSPATH",username="<system>",VariableValue="%JAVA_HOME%\lib"

wmic ENVIRONMENT where"name='path' and username='<system>'" setVariableValue="%path%;%JAVA_HOME%\bin"

wmic ENVIRONMENT where"name='path' and username='<system>'" setVariableValue="%path%;%ANT_HOME%\bin"

4.    安裝Cygwin x64

添加163的鏡像源 http://mirrors.163.com/cygwin/

將Devel改爲Install

5.    建立文件夾C:\AndroidDev

6.    解壓縮adt-bundle-windows-x86_64-20140321.zip到C:\AndroidDev,修改環境變量Path

wmic ENVIRONMENT where"name='path' and username='<system>'" setVariableValue="%path%;C:\AndroidDev\adt-bundle-windows-x86_64-20140321\sdk\platform-tools"

wmic ENVIRONMENT where "name='path'and username='<system>'" setVariableValue="%path%;C:\AndroidDev\adt-bundle-windows-x86_64-20140321\sdk\tools"

7.    解壓縮android-ndk-r9d-windows-x86_64到C:\AndroidDev

8.    解壓縮apache-ant-1.9.3-bin.zip到C:\,修改環境變量Path,增加環境變量ANT_HOME

wmic ENVIRONMENT create name="ANT_HOME",username="<system>",VariableValue="C:\apache-ant-1.9.3"

9.    解壓縮cocos2d-x-3.0.zip到X:\

10.  打開CMD窗口,進入cocos2d-x-3.0文件夾,運行python setup.py,並輸入對應路徑

NDK:   C:\AndroidDev\android-ndk-r9d

SDK:    C:\AndroidDev\adt-bundle-windows-x86_64-20140321\sdk

ANT:    C:\apache-ant-1.9.3\bin

11.  這裏最好重啓一下

 

創建項目:

使用cocos創建新項目

cocos new GameName -p com.CompanyName.GameName -l cpp -d D:\Projects

 

編譯項目:

1.    使用cocos編譯和運行項目

cocos run -s D:\Projects\GameName -p android

(如果只需要編譯項目的話 cocos compile -s D:\Projects\GameName -p android)

 

2.    手動編譯項目(這個方法打包出來的apk無法調試,目前還沒研究出怎麼調整)

A.   編譯Native Code

cd D:\Projects\GameName\proj.android

python build_native.py

有時候會因爲assets目錄刪除不同步的問題,出現失敗,只要再執行一次即可

B.   生成apk

android update project -p .

android update project -p../cocos2d/cocos/2d/platform/android/java

ant debug

C.   安裝到設備

cd bin

adb install GameName.apk


在設備上調試(注意不是虛擬機):

1.    安裝VisualGDB,需要選擇Android支持

2.    打開VS的菜單 -> ANDROID -> Setup SDK/NDKlocations,填寫如下

JDK Path (32 bit)        C:\Program Files\Java\jdk1.8.0_05

Android SDK Path      C:\AndroidDev\adt-bundle-windows-x86_64-20140321\SDK

Android NDK Path     C:\AndroidDev\android-ndk-r9d

Apache ANT Path      C:\apache-ant-1.9.3

3.    打開VS菜單 -> ANDROID -> Debug a Custon APKfile

APK file to debug            D:\Projects\GameName\proj.android\bin\GameName-debug.apk

Startup activity                org.cocos2dx.cpp.AppActivity(這一行應該是自動識別出來的)

Shared librarydirectory     D:\Projects\GameName\proj.android\obj\local

其他保持默認,可以勾選“Savethe preset as”保存設置

如果手動安裝APK,可以勾選“Skip deploying the app”

如果調試的位置在剛啓動程序的時候,可以勾選“Debug code that executes during App startup”

4.    Debug


備註:

1.    VisualGDB可能無法加載符號表,結果是無法查看變量,主要是因爲NDK帶的gcc和gdb版本差異有點大,而且調試符號信息也是不同版本的,具體可參考:

http://forum.sysprogs.com/viewtopic.php?f=5&t=2971

http://forum.sysprogs.com/viewtopic.php?f=5&t=2829

有2種解決方法:

A.   更換編譯器爲clang:

在D:\Projects\GameName\proj.android\jni\Application.mk裏面添加 NDK_TOOLCHAIN_VERSION := clang3.3

B.   讓gcc生成更原始並且兼容性更好的調試信息:

在D:\Projects\GameName\proj.android\jni\Android.mk裏面添加 LOCAL_CFLAGS += -gdwarf-3




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章