1. 程式人生 > >cocos2d-js專案釋出

cocos2d-js專案釋出

Cocos2d-JS最引以為傲的能力就是完美的一次開發,全平臺部署得能力。得益於3.0版中Web引擎和Native引擎的整合,Cocos2d-JS為Web和各原生平臺開發提供了一套統一的工作流,開發者只需要關注自己的JavaScript程式碼,我們提供了Cocos Console工具幫助使用者管理開發以及釋出的流程。

Cocos2d-JS v3.0框架:

1411981499195807.png

從這張架構圖中可以看出,Cocos2d-JS對Web平臺的支援主要是通過Web引擎Cocos2d-html5做到的,而對Native平臺的支援是以Cocos2d-x為核心,通過SpiderMonkey這個JavaScript編譯器來執行JavaScript程式碼,並通過JavaScript繫結技術將其API對映到Cocos2d-x的API上。這兩方面的技術從引擎的v2.x時代就已經成熟了,而Cocos2d-JS v3.0首次將兩者整合到一起,統一併簡化它們的API,真正做到一套程式碼,全平臺執行。這也就是圖中的Cocos2d-JS API層,不同平臺,不同裝置之間的差異被透明化,開發者開發跨平臺遊戲自然也變得前所未有得簡單。


Cocos2d-JS引擎所支援的平臺包括:

  • 桌面瀏覽器(Chrome, Safari, Firefox, Opera, IE9+)

  • 移動瀏覽器(Android, iOS)

  • iOS

  • Android

  • Mac OS X

  • Windows

1.下載引擎包

請前往引擎下載頁面下載最新的引擎包。下載完成後包內容如下所示:

1411981598584536.png

2. 安裝Cocos Console

前文提到Cocos2d-JS的API簡化和統一,另一方面,我們還通過Cocos Console工具統一了不同平臺下的工作流,下面將介紹如何安裝和使用Cocos Console完成從工程建立到釋出的工作流。

引擎包下載完成後,請在控制檯中執行setup.py(windows平臺使用者可能需要先安裝

python 2.7),這個指令碼會新增cocos命令及它依賴的環境變數,在安裝過程中,你可能需要提供你的NDK,Android SDK和ANT目錄。請注意,如果是升級引擎,同樣需要重新執行最新版本的setup.py,以保證cocos命令的引用是最新引擎的。

一些有用的連結和安裝指引:

    * 下載Ant

    * 將Ant解壓到你指定的資料夾。

    * 設定JAVA_HOME環境變數到你的Java路徑,ANT_HOME到剛剛解壓的資料夾,再將${ANT_HOME}/bin (Unix)或%ANT_HOME%/bin (Windows)加入到PATH中。

1 2 3 // Example: 在命令列中執行或新增到.bash_profile(Mac) export ANT_ROOT=/usr/local/ant/bin export JAVA_HOME=/usr/local/jdk1.7.0_51

3. 工程建立

使用Cocos Console建立工程非常簡單,安裝完cocos命令之後,只需要在需要建立工程的目標目錄下開啟終端或命令列工具,輸入下面的命令即可:

1 cocos new -l js ProjectName

建立成功之後就會在目標目錄下發現ProjectName資料夾,這個工程將可以被髮布到所有支援的平臺。新建立工程的目錄結構與引擎包有一些區別,下面是詳細的列表介紹:

1411981791918410.png

4. 快速開發能力

具體的Cocos2d-JS API使用以及開發技巧並不在本章的討論範圍內,但在本章工作流的討論中需要提到的是,Web平臺支援給Cocos2d-JS帶來了非常優秀的快速原型和快速開發能力。

我們建議開發者在原型階段甚至開發階段使用Web平臺進行遊戲邏輯除錯的原因有下面幾點:

  • 點選即玩,不需要編譯,並且修改程式碼後只需要重新整理頁面即可看到效果。

  • 瀏覽器強大的JavaScript除錯工具,可以參考Google Chrome DevTools簡介,它可以幫助開發者快速定位和解決問題。同時也解決了Xcode和Visual Studio等IDE無法除錯JavaScript指令碼程式碼的問題。

  • 更符合JavaScirpt開發人員的習慣。

5. Native平臺編譯

5.1 Cocos Console

在Web平臺除錯完成之後,如果開發者需要將遊戲釋出到原生平臺,那麼還需要針對相應平臺進行編譯除錯工作。Cocos Console再次提供了非常便捷並且統一的編譯能力,使用cocos compile命令即可將工程編譯到不同平臺:

1 2 3 4 5 6 7 8 9 10 11 12 // 在專案目錄下開啟終端並執行 // -p指示目標平臺,包括web,ios,mac,android,win32,每次編譯請選擇其中之一 cocos compile -p web|ios|mac|android|win32 // 除此之外,還可以選擇編譯模式:-m debug|release // Web平臺還可以新增--advanced來使用Closure Compiler的高階混淆功能對程式碼進行混淆 cocos compile -p android -m release cocos compile -p web -m release --advanced // 將compile命令替換為run即可在模擬器或真機上運行遊戲 cocos run -p web cocos run -p ios

關於Cocos Console更詳細的使用方式,請參考Cocos Console文件

5.2 使用各平臺IDE編譯

在frameworks/runtime-src/目錄下,開發者可以找到各平臺的工程檔案,包括:

  • proj.ios_mac:可用於Xcode的iOS和Mac OS X專案資料夾

  • proj.win32:可用於Visual Studio的Windows專案資料夾

  • proj.android:可用於Eclipse的Android專案資料夾

6. 專案釋出

6.1 Mac/Win32平臺釋出

直接執行

1 cocos compile -p mac|win32 -m release

即可打包出發布包,執行成功後可以在publish/目錄下找到可執行檔案。

6.2 iOS平臺釋出

執行

1 cocos compile -p ios -m release --sign-identity "iPhone Distribution:xxxxxxxx"

使用你自己的釋出簽名來打包出發布包,結果同樣可以在publish/目錄下找到。

6.3 Android平臺釋出

執行

1 cocos compile -p android -m release --ndk-mode release

打包出apk包。

在publish/目錄下找到打包出的apk,使用jarsigner工具對該apk添加簽名,具體步驟見Google官方文件

6.4 Web平臺釋出

執行

1 cocos compile -p web -m release

既可在publish/目錄下生成獨立的釋出資料夾,將該資料夾部署到你的伺服器上,使用者即可訪問。

命令中新增--advance可以開啟closure compiler工具高階壓縮功能,該模式對程式碼有一定要求,如果發現打包之後無法正常執行請參考Closure Compiler Advanced Compilation文件