网狐荣耀6701/6801 手机打包发布

更新于 2018-12-04  约 9 分钟

1.前言

本篇将介绍网狐cocos2dx-lua工程打包android的apk、ios编译过程以及vs2015模拟运行和调试、lua脚本热更新。
关于网狐的服务端编译运行,请查看网狐6701/6801服务端编译 测试部署

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代码中配置修改

  1. 进入client目录。
  2. 查看修改base\src\app\models\AppDF.lua中,用来进行app更新和资源、脚本热更新的配置。
    BASE_C_VERSION(app版本)
    BASE_C_RESVERSION(资源版本,包括lua脚本、图片等)
  3. 修改basesrcappviewsWelcomeScene.lua中
    URL_REQUEST -> "http://172.16.58.129"
  4. 修改clientsrcplazamodelsyl.lua中
    LOGONSERVER -> "172.16.58.129"
    SERVER_LIST -> { "172.16.58.129", }

3.环境准备

以下各环境版本为笔者测试通过的,大家可以看情况更新。

3.1.windows环境

windows环境主要用于资源打包发布(publish)、安卓apk打包(android)和vs2015模拟运行和调试(debug)。

  1. Win7
  2. 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%
  3. Jdk1.8(android)
    JAVA_HOME -> C:Program FilesJavajdk1.8.0_131
    CLASSPATH -> %JAVA_HOME%lib;%JAVA_HOME%libtools.jar
  4. WinRAR(publish)
    PATH -> %PATH%;C:Program FilesWinRAR
  5. Python2.7(publish)
    PATH -> %PATH%;C:Python27
  6. 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
  7. AndroidSDK(android)adt-bundle-windows-x86-20140624
    ANDROID_SDK_ROOT -> C:sdk
  8. AndroidNDK(android)android-ndk-r10d-windows-x86_64
    NDK_HOME -> C:android-ndk-r10d
    NDK_ROOT -> C:android-ndk-r10d
  9. VS2015(debug)
    vs lua语法插件babelua-compat-1.06-vs2015

3.2.mac环境

  1. mac 10.11
  2. xcode 7.2.1 高版本会有问题,可自行解决

4.发布资源、脚本,网站后台增加手机游戏。

  1. 环境准备,参考博客
  2. info目录下,提供了一键发布资源脚本(发布资源.bat),执行即可。
  3. 将clientciphercode下的文件夹复制到网站前台目录下的download目录(没有则自己创建)。
  4. 进入网站后台->网站系统->站点配置->移动大厅。按字段说明填写,下载地址如下图,大厅版本和资源版本在2.2中提到了。
    clipboard.png
  5. 网站后台->系统维护->游戏管理->手游->新增。模块名称即子游戏在client\game\下的路径,用"."分割。
  6. 关于热更新。修改2.2中提到的资源版本号后,重新发布资源到前台网站download目录下,然后在网站后台,修改移动大厅为刚刚修改号的资源版本号即可。

clipboard.png

5.windows环境下,安卓打包

  1. 修改文件frameworks\runtime-src\proj.android\ant.properties,中keystore的路径。关于keystore的作用可以自行搜索了解。
  2. info目录下,提供了一键打包脚本(发布debug版.bat、发布release版.bat)会发布数到publish路径下。注意查看info目录下的GloryProjectR.bat,其中关键的打包命令call cocos compile -p android --ap android-20 -m release -j 4,需要确保sdk中要有命令中使用的sdk版本。
  3. 将apk放到前台网站的download目录下。apk的名称需要相应修改,因为代码中写死了名称。
    clipboard.png

6. mac环境下,ios编译

因为笔者没有证书,无法进行打包,就简单说明编译过程。需要注意因为网狐使用到的一个第三方支付sdk(竣付通),而该sdk不支持x86_64架构,所以当编译目标为模拟器时,将编译失败,需要使用真机进行编译调试。

  1. 发布资源(info目录下LuaiOSPackage.sh,作用类似发布资源.bat)。
  2. 使用xcode打开frameworks/runtime-src/proj.ios_mac/GloryProject.xcodeproj。
  3. 手机连接电脑,并在手机上选择信任。
  4. xcode点击编译即可,完成会在手机上安装app,打开即可。

7. windows环境下,vs2015模拟运行和调试

  1. 使用vs2015打开frameworks\runtime-src\proj.win32\GloryProject.sln解决方案。
  2. 选择debug配置,编译。生成GloryProject.exe,以此作为lua解释器。
  3. 使用以下命令即可运行手机项目。WORKDIR为client目录路径,game为GloryProject.exe路径。

    set WORKDIR=%CD%/client 
    set game=%CD%/run/debug/GloryProject.exe
    start %game% -workdir %WORKDIR%
  4. 关于调试,右键GloryProject项目->属性->调试。命令即GloryProject.exe的路径(同链接器中中输出文件的路径),命令参数即配置lua代码client目录,工作目录即生成的GloryProject.exe所在目录,完成。
    clipboard.png
  5. 安装完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 -> 名称
    clipboard.png
  6. 点击本地Windows调试器,即可。c++代码和lua代码均可断电调试了。
    clipboard.png
阅读 3.2k更新于 2018-12-04

推荐阅读
目录