0.3.0 • Published 6 months ago

jd-minigame-ci v0.3.0

Weekly downloads
-
License
ISC
Repository
-
Last release
6 months ago

京东小游戏 CI 工具

概述

jd-minigame-ci 是为京东小游戏开发者提供的工具包。开发者无需打开开发者工具,使用工具包即可完成小程序代码的上传、预览等操作。

上传秘钥

使用工具包之前,请访问“京东小程序控制台—设置—开发设置—小游戏代码上传秘钥”获取上传秘钥。

需要注意的是,获取上传密钥权限目前仅小游戏管理员可以获取。

alt 京东小程序秘钥生成

功能

  1. 上传代码,对应小程序开发者工具的上传功能
  2. 预览代码,对应小程序开发者工具的预览功能
  3. 支持“node 脚本”和“命令行”调用方式
  4. 跨平台,支持 Windows/Mac/Linux,可用于产品集成流水线部署

安装

前提要求Node版本 18+;

npm install -g jd-minigame-ci

CLI版本获取

为确保使用最新功能和安全更新,如果检测到您的本地npm包版本落后于仓库中的最新版本,建议首先卸载本地包,随后安装最新版本。

通过以下命令可获取本地京东小游戏CLI工具版本:

jgc -v 
jgc -V

以上命令均可获取本地京东小游戏CLI工具版本。

也可以通过以下命令行:

jgc latest 

以上命令将拉取京东小游戏CLI工具在npm官方仓库最新版本,并与本地版本进行对比,提示版本对比信息。

命令行调用

创建小游戏配置文件

在游戏项目父目录或者其他目录(注意不要在当前待打包游戏的子目录)执行以下命令:

jgc config

配置成功后会在当前目录生成配置文件 jgc.config.js,配置示例如下:

module.exports = {
  "type": "game", // 包类型, 有三种类型可选:game(小游戏), plugin(插件)
  "appId": "133D26A41FB623****", // 游戏的appId 
  "requestToken": "1c0f081c18a248adbff9f****", // 游戏上传秘钥
  "entry": "./build/source", // 需要被打包的小游戏的路径 
  "version": "1.0.0", // 选填,版本号
  "description": "自测" // 选填,自定义备注 
}

预览功能

预览功能主要用于开发过程中,对小游戏进行真机预览及调试。

在生成 jgc.config.js 的同级目录执行以下命令:

jgc preview

执行完上述命令后,如果一切正常,会在Termina出现二维码,

alt 预览二维码

上传功能

上传功能用于开发者通过命令行快速将本地代码包上传至开发版本,并自动设置为体验版,返回体验版二维码。

在生成 jgc.config.js 的同级目录执行以下命令

jgc upload

alt 体验版二维码

客户端调试

在非线上小游戏,iOS/Android均支持打开调试模式,支持vConsole查看调试日志。

alt 开启调试

alt 调试

脚本调用

上传功能

const jgcCli = require('jd-minigame-ci')
jgcCli.upload({
  type: 'game', // 类型
  appId: '***', // 小游戏的appId
  requestToken: '', // 小游戏的上传秘钥
  entry: '',  // 需要被打包的小游戏(或者游戏插件)的路径
  version: '1.0.0', // 小游戏版本号
  description: 'fix:小游戏bug', // 小游戏版本描述
}).then(data => {
  console.log('data',data);
});

输入参数

参数名类型必填说明
appIdstring小游戏的appId
requestTokenstring秘钥信息
entrystring项目路径
versionstring自定义版本号
descriptionstring自定义备注

返回值

属性类型说明
urlstringopenapp 协议二维码地址
expiredTimestring过期时间

预览功能

const jgcCli = require('jd-minigame-ci')
jgcCli.preview({
  type: 'game', // 类型
  appId: '***', // 小游戏的appId
  requestToken: '', // 小游戏的上传秘钥
  entry: '',  // 需要被打包的小游戏(或者游戏插件)的路径
}).then(data => {
  console.log('data',data);
});

输入参数

参数名类型必填说明
appIdstring小游戏的appId
requestTokenstring秘钥信息
entrystring项目路径

返回值

属性类型说明
urlstringopenapp 协议二维码地址
expiredTimestring过期时间
0.3.0

6 months ago

0.2.9

7 months ago

0.2.6

10 months ago

0.2.8

9 months ago

0.2.2

11 months ago

0.2.1

11 months ago

0.2.0

11 months ago

0.1.9

12 months ago

0.1.8

1 year ago

0.1.6

1 year ago

0.1.2

1 year ago

0.1.0

1 year ago

0.0.9

1 year ago

0.0.8

1 year ago