# 调试指南

# API 开发流程

在开发过程中,美团小游戏遵循业界主流小游戏的设计规范,提供与行业标准高度对齐的功能 API 接口,已有小游戏项目的代码具备良好的复用性(具体支持内容见下节)。目前平台能够自动兼容前缀为 wx 和 mt 的接口,无需修改代码即可完成适配。当然,为保障产品质量,仍需在美团 App 内进行真机调试并完整验证游戏内容。

# 必须接入的 API

# 接入问题

  1. 优先排查游戏内逻辑,规避业务问题。

  2. 功能接入失败或 API 调用报错,可查阅本平台开放文档的相关说明及 FAQ,结合报错信息逐步排查解决。

  3. 无法解决的问题可以到对接群交流咨询,咨询时需包含以下信息

  • 问题描述:使用 xx 参数调用 xx API 出现 xx 报错和 xx 现象,关键代码片段截图或文本
  • 复现方式:游戏二维码,及问题的复现路径。(如果关联业务逻辑比较复杂,必要时建议提供关键代码 demo 测试包,便于复现和调试)

# 后端跨域配置

需要业务方的资源服务器添加相应配置以允许 “mgcfile://” 的访问,如果没有配置,游戏加载的远端网络资源对应的服务器不允许 “mgcfile://” 源访问的话,资源就无法加载。

# 真机调试流程

# 安装调试与预览发布工具

请确保本地已经安装 Node.js (Node.js 版本不低于 v14.13.0),然后运行以下命令安装最新版本的 美团小游戏 CLI 工具(mgc-cli-external):

$ npm i -g mgc-cli-external@latest

# 创建美团小游戏配置文件

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

$ mgc config

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

module.exports = { 
  "type": "game",                               // 包类型, 有三种类型可选:game(小游戏)、webgame(h5游戏和应用)、plugin(插件)
  "appId": '4503b3691d974573a747ed85f74f1a29',  // 游戏的appId 
  "appSecret": '752d7e4a3b8b4525',              // 游戏的appSecret 
  "entry": './build/wechatgame'                 // 需要被打包的小游戏的路径  
}

# 小游戏 Debug 测试包

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

$ mgc debug

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

img

# iOS调试

可以使用 美团App (要求版本大于等于11.2.200)进行扫码,此时会从线上拉取 debug 包,待加载完成后,可以点击屏幕中的 debug 按钮查看日志,日志中可以查看。

img

# Android 调试

可以使用 美团App (需要使用专用的APK测试包, 请找对接人员获取)进行扫码,此时会从线上拉取 debug 包,待加载完成后,可以点击屏幕中右上角胶囊按钮的**...**唤起面板,点击开发者面板进入调试页面,进一步的可以在日志中可以查看游戏日志。

# 发布流程

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

$ mgc publish

然后可以在开放平台设置发布即可。

img

# 流程化接入配置

mgc-cli-external 支持版本:0.0.42

支持通过脚本工具直接调用 mgcCli 工具,用于流程化打包并上传到开放平台。

注意环境中需要安装 mgc-cli-external

$ npm i --save mgc-cli-external@latest

# API列表

# mgcCli.debug(Object object)

# 参数
# Object object
属性 类型 默认值 必填 说明
srcPath string 否 游戏项目的根路径,不填写默认当前路径
# 返回值
# Success: Promise(Object object)
属性 类型 说明
code number 0
msg string 信息提示
data.url string 成功时返回的 imeituan 地址
# Fail: Promise(Object object)
属性 类型 说明
code number -1
msg string 信息提示
errMsg object 失败时返回接口错误信息

# mgcCli.publish(Object object)

# 参数
# Object object
属性 类型 默认值 必填 说明
remark string 是 备注
srcPath string 否 游戏项目的根路径,不填写默认当前路径
# 返回值
# Success: Promise(Object object)
属性 类型 说明
code number 0
msg string 信息提示
# Fail: Promise(Object object)
属性 类型 说明
code number -1
msg string 信息提示
errMsg object 失败时返回接口错误信息

# 接口示例

# DEBUG 包

  const mgcCli = require('mgc-cli-external');

  mgcCli.debug().then(res => {
    console.log(res);
  })

# 预览或线上包

  const mgcCli = require('mgc-cli-external');
  
  mgcCli.publish().then(res => {
    console.log(res);
  })
上次更新: 8/10/2026, 5:36:37 PM