準(zhǔn)備工作:
下載cocos2d-js引擎肚逸,版本v3.2,要做的第一件事就是查看引擎下的README.md文件硕淑,這會(huì)是一個(gè)很好的習(xí)慣,在README.md里面給我門提示一些注意事項(xiàng)等問題嘉赎,這樣就少走了很多彎路置媳,所以要仔細(xì)的過一遍。
在README.md中得到如下信息:
1.AndroidNDK版本為r10c及以上 下載地址:
http://dl.google.com/android/ndk/android-ndk-r10c-darwin-x86_64.bin(64位)
http://dl.google.com/android/ndk/android-ndk-r10c-darwin-x86.bin(32位)
在終端進(jìn)行安裝公条,命令如下:
ndk$ chmod a+x android-ndk-r10c-darwin-x86_64.bin
ndk$?./android-ndk-r10c-darwin-x86_64.bin
如果選擇低于r10c的版本在編譯完android時(shí)會(huì)有如下提示:
BUILD SUCCESSFUL
Total?time:16seconds
Move?apk?to?/Users/xiangzi/goldking/runtime/android
build?succeeded.
The?NDK?versionisnotr10corabove.
Your?application?may?crashorfreeze?on?Android?L(5.0)?when?using?BMFontandHttpClient.
For?More?information:
https://github.com/cocos2d/cocos2d-x/issues/9114
https://github.com/cocos2d/cocos2d-x/issues/9138
Your?application?may?crash?when?using?c++11regular?expression?with?NDK_TOOLCHAIN_VERSION4.8
2.Android SDK 版本最小10及以上下載地址:http://dl.google.com/android/android-sdk_r11-mac_x86.zip
android版本建議使用4.4拇囊,因?yàn)槟壳笆袌?chǎng)主流版本就是4.4,對(duì)應(yīng)API為19靶橱,所以在sdk manager上下載android-19寥袭。
android 5.0 強(qiáng)烈建議不要用,經(jīng)本人親自測(cè)試編譯完的sdk在版本為4.x.x的真機(jī)上運(yùn)行黑屏关霸。
3.ANT下載與安裝可參考:http://blog.csdn.net/song_hui_xiang/article/details/14315529
4.Python(32bit)版本2.7.5或更高下載址:https://www.python.org/ftp/python/2.7.9/python-2.7.9-macosx10.5.pkg
5.Javaversion 1.7
6.創(chuàng)建一新工程的Example:
$ cd cocos2d-js
$?./setup.py
$?source?FILE_TO_SAVE_SYSTEM_VARIABLE
$?cocosnewMyGame?-l?js?-d?/directory/to/project
$?cd?/directory/to/project/MyGame
存放目錄:
NDK_ROOT=/Users/xiangzi/Documents/android-ndk-r10c
ANDROID_SDK_ROOT=/Users/xiangzi/Documents/android-sdk-mac_x86
ANT_ROOT=/usr/local/ant/bin
python是安裝程序传黄,直接點(diǎn)擊安裝即可。
以上都準(zhǔn)備好后队寇,開始一步步創(chuàng)建新工程膘掰。
配置環(huán)境變量:
1.首先檢查是否有.bash_profile文件佳遣,有的話一定要?jiǎng)h除识埋,否則按官方要求做完后會(huì)一直報(bào)cocos: command not found的錯(cuò)誤凡伊。
.bash_profile文件在用戶目錄下:/Users/xiangzi,而且是隱藏文件窒舟。(xiangzi是我個(gè)人的用戶名)
顯示Mac隱藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles -booltrue
隱藏Mac隱藏文件的命令:
defaults?write?com.apple.finder?AppleShowAllFiles?-boolfalse
2.打開終端進(jìn)入cocos2d-js-v3.2 目錄下:命令:
$?cd?/Users/xiangzi/Documents/cocos2d-js-v3.2
$?./setup.py
這時(shí)會(huì)停到:Please enter the path of NDK_ROOT (or press Enter to skip):
按要求輸入NDK_ROOT的路徑:
Please enter the path of NDK_ROOT (or press Enter to skip):/Users/xiangzi/Documents/android-ndk-r10c
出現(xiàn)->Added NDK_ROOT=/Users/xiangzi/Documents/android-ndk-r10c說明成功系忙。
接著停到:
Please enter the path of ANDROID_SDK_ROOT (or press Enter to skip):
和NDK_ROOT一樣:
Please enter the path of ANDROID_SDK_ROOT (or press Enter to skip):/Users/xiangzi/Documents/android-sdk-mac_x86
ANT按給參考配置后,到此會(huì)自動(dòng)找到->ANT_ROOT is found : /usr/local/ant/bin
最后就停到:
Please execute command: "source /Users/xiangzi/.profile" to make added system variables take effect
不懂的查單詞惠豺,按要求來笨觅,最后輸入:
$?source?/Users/xiangzi/.profile
到此環(huán)境配置結(jié)束。
插播一條:如何查看演示案例耕腾。進(jìn)入目錄js-tests下见剩, 命令:
$?cd?/Users/xiangzi/Documents/cocos2d-js-v3.2/samples/js-tests
$?cocos?run?-p?web
瀏覽器控制臺(tái)會(huì)立即得到對(duì)應(yīng)的反饋信息。
也可以在iOS,android,Mac 上運(yùn)行這些測(cè)試工程文件扫俺,命令:
cocos?run?-p?ios|android|mac
在終端輸入命令:
cocosnewMyGame?-l?js
給工程起名字時(shí)不要用到特殊字符苍苞,比如 . - 等,在編譯android時(shí)會(huì)報(bào)錯(cuò)狼纬,提示有無效的字符
在MyGame/frameworks/runtime-src/proj.ios_mac目錄下MyGame.xcodeproj
羹呵,沒錯(cuò)就是xcode文件,就這樣iOS與mac版也就有了疗琉。真是做到了“一次編碼冈欢,到處運(yùn)行”,完全的跨平臺(tái)盈简。而且在iOS 8中凑耻,Safari開始支持WebGL,相較之前性能較低的Canvas繪圖模式柠贤,幀率的數(shù)倍提升將給用戶帶來更加流暢的游戲體驗(yàn)香浩。WebGL渲染的開啟加上瀏覽器中JavaScript引擎性能的不斷提升,未來的移動(dòng)Web平臺(tái)給人帶來美好的想象空間臼勉。Cocos
2d-JS將與iOS 8 WebGL一起為用戶提供全新的流暢體驗(yàn)邻吭,為開發(fā)者帶來更為廣闊的發(fā)揮空間。
在終端cd進(jìn)入工程目錄宴霸,執(zhí)行如下命令囱晴,進(jìn)行Web的發(fā)布版本打包。
cocos?compile?-p?web?-m?release
-p : 指定打包平臺(tái)(Android, iOS, Mac, Web, Win32,Linux)
-m : 可選參數(shù)瓢谢,指定打包模式 debug|release(默認(rèn)debug)
在終端cd進(jìn)入工程目錄畸写,執(zhí)行如下命令,進(jìn)行Android的發(fā)布版本打包恩闻。
cocos?compile?-p?android?-m?debug
-p : 指定打包平臺(tái)(Android, iOS, Mac, Web, Win32,Linux)
-m : 可選參數(shù)艺糜,指定打包模式 debug|release(默認(rèn)debug)
如果想重新編譯Android只要?jiǎng)h除工程目錄下proj.android\obj\local\armeabi文件夾下的所有文件即可。