1.前言
本篇將介紹網狐cocos2dx-lua工程打包android的apk、ios編譯過程以及vs2015模擬運行和調試、lua腳本熱更新。
關於網狐的服務端編譯運行,請查看網狐6701/6801服務端編譯 測試部署android
2.目錄結構和地址修改
2.1.手機工程目錄
-- client lua目錄
--------- ciphercode 加密後用來發布的lua代碼
--------- client 遊戲大廳模塊
--------- game 子游戲模塊
--------- base lua與cocos c++銜接的基礎模塊
-- frameworks
--------- cocos2d-x cocos庫
--------- runtime-src cocos工程目錄
-- info 整理好的文檔和批處理腳本
-- publish 發佈apk的目錄
2.2.lua代碼中配置修改
- 進入client目錄。
- 查看修改base\src\app\models\AppDF.lua中,用來進行app更新和資源、腳本熱更新的配置。
BASE_C_VERSION(app版本)
BASE_C_RESVERSION(資源版本,包括lua腳本、圖片等)
- 修改basesrcappviewsWelcomeScene.lua中
URL_REQUEST -> "http://172.16.58.129"
- 修改clientsrcplazamodelsyl.lua中
LOGONSERVER -> "172.16.58.129"
SERVER_LIST -> { "172.16.58.129", }
3.環境準備
如下各環境版本爲筆者測試經過的,你們能夠看狀況更新。ios
3.1.windows環境
windows環境主要用於資源打包發佈(publish)、安卓apk打包(android)和vs2015模擬運行和調試(debug)。c++
- Win7
- Cocos2dx-3.10(publish、android)Cocos_3.10.exe
COCOS_CONSOLE_ROOT -> C:\cocos2d-x-3.10\tools\cocos2d-console\bin
PATH -> %PATH%;%COCOS_CONSOLE_ROOT%
- Jdk1.8(android)
JAVA_HOME -> C:Program FilesJavajdk1.8.0_131
CLASSPATH -> %JAVA_HOME%lib;%JAVA_HOME%libtools.jar
- WinRAR(publish)
PATH -> %PATH%;C:Program FilesWinRAR
- Python2.7(publish)
PATH -> %PATH%;C:Python27
- Ant1.9.6(android)
ANT_ROOT -> %ANT_HOME%bin
ANT_HOME -> C:apache-ant-1.9.6
PATH -> %PATH%;%ANT_HOME%bin
CLASSPATH -> %ANT_HOME%lib
- AndroidSDK(android)adt-bundle-windows-x86-20140624
ANDROID_SDK_ROOT -> C:sdk
- AndroidNDK(android)android-ndk-r10d-windows-x86_64
NDK_HOME -> C:android-ndk-r10d
NDK_ROOT -> C:android-ndk-r10d
- VS2015(debug)
vs lua語法插件babelua-compat-1.06-vs2015
3.2.mac環境
- mac 10.11
- xcode 7.2.1 高版本會有問題,可自行解決
4.發佈資源、腳本,網站後臺增長手機遊戲。
- 環境準備,參考博客
- info目錄下,提供了一鍵發佈資源腳本(發佈資源.bat),執行便可。
- 將clientciphercode下的文件夾複製到網站前臺目錄下的download目錄(沒有則本身建立)。
- 進入網站後臺->網站系統->站點配置->移動大廳。按字段說明填寫,下載地址以下圖,大廳版本和資源版本在2.2中提到了。
- 網站後臺->系統維護->遊戲管理->手遊->新增。模塊名稱即子游戲在client\game\下的路徑,用"."分割。
- 關於熱更新。修改2.2中提到的資源版本號後,從新發布資源到前臺網站download目錄下,而後在網站後臺,修改移動大廳爲剛剛修改號的資源版本號便可。
![clipboard.png clipboard.png](http://static.javashuo.com/static/loading.gif)
5.windows環境下,安卓打包
- 修改文件frameworks\runtime-src\proj.android\ant.properties,中keystore的路徑。關於keystore的做用能夠自行搜索瞭解。
- info目錄下,提供了一鍵打包腳本(發佈debug版.bat、發佈release版.bat)會發布數到publish路徑下。注意查看info目錄下的GloryProjectR.bat,其中關鍵的打包命令
call cocos compile -p android --ap android-20 -m release -j 4
,須要確保sdk中要有命令中使用的sdk版本。
- 將apk放到前臺網站的download目錄下。apk的名稱須要相應修改,由於代碼中寫死了名稱。
6. mac環境下,ios編譯
由於筆者沒有證書,沒法進行打包,就簡單說明編譯過程。須要注意由於網狐使用到的一個第三方支付sdk(竣付通),而該sdk不支持x86_64架構,因此當編譯目標爲模擬器時,將編譯失敗,須要使用真機進行編譯調試。apache
- 發佈資源(info目錄下LuaiOSPackage.sh,做用相似發佈資源.bat)。
- 使用xcode打開frameworks/runtime-src/proj.ios_mac/GloryProject.xcodeproj。
- 手機鏈接電腦,並在手機上選擇信任。
- xcode點擊編譯便可,完成會在手機上安裝app,打開便可。
7. windows環境下,vs2015模擬運行和調試
- 使用vs2015打開frameworks\runtime-src\proj.win32\GloryProject.sln解決方案。
- 選擇debug配置,編譯。生成GloryProject.exe,以此做爲lua解釋器。
-
使用如下命令便可運行手機項目。WORKDIR爲client目錄路徑,game爲GloryProject.exe路徑。segmentfault
set WORKDIR=%CD%/client
set game=%CD%/run/debug/GloryProject.exe
start %game% -workdir %WORKDIR%
- 關於調試,右鍵GloryProject項目->屬性->調試。命令即GloryProject.exe的路徑(同連接器中中輸出文件的路徑),命令參數即配置lua代碼client目錄,工做目錄即生成的GloryProject.exe所在目錄,完成。
- 安裝完babelua-compat-1.06-vs2015後,vs菜單欄會多一個Lua選項,點擊該選項->New Lua Project。點擊ok後,由於會建立client目錄的索引,clinet目錄下文件特別多,因此會很卡,要麼等,要麼把子游戲目錄game下的遊戲刪一些。
Lua scripts folder -> lua腳本client目錄
Lua exe path -> GloryProject.exe路徑
Working path -> lua項目vs解決方案存放路徑
Command line -> 同上3
Lua project name -> 名稱
- 點擊本地Windows調試器,便可。c++代碼和lua代碼都可斷電調試了。