UNPKG

@quick-game/cli

Version:

Command line interface for rapid qg development

110 lines (74 loc) 3.85 kB
# `@quick-game/cli` > 为开发者提供的联盟快游戏命令行工具 安装 [@quick-game/cli](https://www.npmjs.com/package/@quick-game/cli) 后,便可使用 `qg` 命令。安装方法如下: ```bash npm install -g @quick-game/cli ``` ## 命令行使用 ### 1、创建联盟快游戏工程 ``` qg init <project-name> [-t <template>] [-c <cwd dir>] [-f] ``` #### 参数 ### `project-name` 要创建的联盟快游戏工程的名称。可以为 `.` ,当 `project-name``.`时表示在当前目录创建联盟快游戏工程。 ### `-t` 指定创建联盟快游戏工程使用的模板,默认为`default`,表示使用默认的模板。不指定该参数时就使用默认的模板。 > 目前只有`default`模板,所以该参数可以不指定,使用默认值即可 ### `-c` 指定创建联盟快游戏工程的目录,不指定该参数时,使用`process.cwd()`也就是当前执行目录来创建,如果指定 了路径,就在指定路径创建。 ### `-f` 如果指定的 `project-name` 目录已经存在,会提示用户是 '覆盖' 还是 '合并',指定 -f 或者 --force 可以忽略提示,直接强制覆盖 #### 示例 ``` //在当前路径创建名为abc的联盟快游戏工程 qg init abc //在当前路径创建名为abc的联盟快游戏工程,如果已经存在 abc 则强制覆盖 qg init abc -f //在当前路径直接创建联盟快游戏工程,假设当前路径为`/usr/name/demoGame/`,联盟快游戏工程名为demoGame qg init . // 在 `/usr/name/documents/`路径创建名为abc的联盟快游戏工程 qg init abc -c /usr/name/documents/ // 在 `/usr/name/demoGame/`路径直接创建联盟快游戏工程,即联盟快游戏工程名为 demoGame qg init . -c /usr/name/demoGame/ ``` 命令执行后,会在当前目录下创建文件夹,作为项目根目录,这个项目已经包含了项目配置与游戏入口的初始代码,项目根目录主要结构如下: ``` ├── sign rpk包签名模块 │ └── debug 调试环境 │ ├── certificate.pem 证书文件 │ └── private.pem 私钥文件 ├── src │ ├── image 图片资源目录 │ │ └── logo.png 游戏图标 │ ├── js 游戏业务逻辑目录 │ | └── main.js 游戏业务逻辑代码 │ ├── game.js 游戏入口js │ └── manifest.json 项目配置文件,配置游戏图标、包名等 └── package.json 定义项目需要的各种模块及配置信息Copy to clipboardErrorCopied ``` 目录的简要说明如下: - src:项目源文件夹 - sign:签名模块,当前仅有debug签名,**如果内测上线,请添加release文件夹,增加release签名**;**签名生成**: ```js openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 3650 -out certificate.pem ``` ### 2、构建联盟快游戏RPK包体 #### debug打包 ```js qg build ``` #### release打包 ```js qg release ``` 编译打包成功后,项目根目录下会生成文件夹:build、dist: - build:临时产出,包含编译后的页面js,图片等 - dist:最终产出,包含rpk文件。其实是将build目录下的资源打包压缩为一个文件,后缀名为rpk,这个rpk文件就是项目编译后的最终产出 - 若本地没有release签名,会自动根据本地的包名和配置生成`release签名`,建议cp提前生成好。签名需要保存的其他地方,用于后续更新打包。 ### 3、启动调试服务 ```js qg server ``` - 将dist目录下的rpk包体创建http服务,使用快游戏调试器扫码可以进行下载安装rpk包体 - 游戏启动后,会自动打开chrome调试能力