开发者工具提供了命令行与 HTTP 服务两种接口供外部调用,开发者可以通过命令行或 HTTP 请求指示工具进行登录、预览、上传等操作。

命令行

通过命令行调用安装完成的工具可执行文件,完成登录、预览、上传、自动化测试等操作。调用返回码为 0 时代表正常,为 -1 时错误。

命令行工具所在位置:

macOS: <安装路径>/Contents/MacOS/cli

Windows: <安装路径>/cli.bat

命令行启动工具

-o, —open [projectpath]: 打开工具,如果不带 projectpath,只是打开工具。如果带 project path,则打开路径中的项目,每次执行都会自动编译刷新,并且自动打开模拟器和调试器。projectpath 不能是相对路径。项目路径中必须含正确格式的 project.config.json 且其中有 appid 和 projectname 字段。

示例:

  1. # 打开工具
  2. cli -o
  3. # 打开路径 /Users/username/demo 下的项目
  4. cli -o /Users/username/demo

指定工具 HTTP 服务端口号

工具最低版本 1.02.1906042

—port <number>: 该命令需配合其他命令使用,如果工具没有打开,则自动打开工具,工具将以给定端口号启动 HTTP 服务,如果工具已打开且端口不同于指定的端口号,会自动报错停止执行。

示例:

  1. cli --port 3000 -o

命令行登录

命令行提供两种登录方式:一是将登录二维码转成 base64 给用户,让用户自己集成到自己系统中使用;二是将二维码打印在命令行中。

-l, —login: 启动登录逻辑。

—login-qr-output [format[@path]]: 指定二维码输出形式,format 可选值包括 terminal(命令行输出), base64, image。如果有填 path,表示结果输出到指定路径的文件中。如果没填 path,表示将结果输出到命令行。不使用此选项或使用了但没有填 format 的话则默认为命令行打印。

—login-result-output <path>: 输出登录结果到指定文件

示例:

  1. # 登录,在终端中打印登录二维码
  2. cli -l
  3. # 登录,在终端中打印登录 base64 形式的二维码
  4. cli -l --login-qr-output base64
  5. # 登录,二维码转成 base64 并存到文件 /Users/username/code.txt
  6. cli -l --login-qr-output base64@/Users/username/code.txt
  7. # 登录,并输出登录结果到文件 /Users/username/result.json
  8. cli -l --login-result-output /Users/username/result.json

预览

预览时必须处于登录状态,如果没有登录,会提示需先登录。预览的二维码可命令行打印也可以转成 base64。ES6 等项目配置从 project.config.json 读。

-p, —preview <project_root>: 预览代码,project_root 指定项目根路径。

—preview-qr-output [format[@path]]: 指定二维码输出形式,语义同登录用的选项 —login-qr-output。

—preview-info-output <path>: 指定后,会将本次预览的额外信息以 json 格式输出至指定路径,如代码包大小、分包大小信息。

—compile-condition '<json>': 指定自定义编译条件,json 条件可指定两个字段,pathName 表示打开的页面,不填表示首页,query 表示页面参数

示例:

  1. # 预览,在终端中打印登录二维码
  2. cli -p /Users/username/demo
  3. # 预览,二维码转成 base64 并存到文件 /Users/username/code.txt
  4. cli -p /Users/username/demo --preview-qr-output base64@/Users/username/code.txt
  5. # 预览,并将预览代码包大小等信息存入 /Users/username/info.json
  6. cli -p /Users/username/demo --preview-info-output /Users/username/info.json
  7. # 预览,指定自定义编译条件,pathName
  8. cli --compile-condition '{"pathName":"pages/index/index","query":"x=1&y=2"}'

自动预览

自动预览必须处于登录状态,如果没有登录,会提示需先登录。

—auto-preview <project_root>: 自动预览代码,project_root 指定项目根路径。

—auto-preview-info-output <path>: 指定后,会将本次预览的额外信息以 json 格式输出至指定路径,如代码包大小、分包大小信息。

示例:

  1. # 预览,并将预览代码包大小等信息存入 /Users/username/info.json
  2. cli --auto-preview /Users/username/demo --auto-preview-info-output /Users/username/info.json

上传代码

上传代码时必须处于登录状态,如果没有登录,会提示需先登录。

上传代码需要的信息包括项目根目录、版本号、以及可选的版本备注。

-u, —upload <version@project_root>: 上传代码,version 指定版本号,project_root 指定项目根路径。

—upload-desc <desc>: 上传代码时的备注。

—upload-info-output <path>: 指定后,会将本次上传的额外信息以 json 格式输出至指定路径,如代码包大小、分包大小信息。

示例:

  1. # 上传路径 /Users/username/demo 下的项目,指定版本号为 1.0.0,版本备注为 initial release
  2. cli -u 1.0.0@/Users/username/demo --upload-desc 'initial release'
  3. # 上传并将代码包大小等信息存入 /Users/username/info.json
  4. cli -u 1.0.0@/Users/username/demo --upload-desc 'initial release' --upload-info-output /Users/username/info.json

构建 npm

命令行触发 npm 构建。

—build-npm <project_root>: 按照 project.config.json 中的配置构建,行为和菜单栏的构建 NPM 一致—build-npm-compile-type <type>:手动指定编译类型("miniprogram" | "plugin"),用于指定走 miniprogramRoot 还是 pluginRoot,优先级比 project.config.json 中的高

示例:

  1. cli --build-npm /Users/username/demo

开启自动化

开启小程序自动化功能,详细介绍可点此查看。

—auto <project_root>:打开指定项目并开启自动化功能。

—auto-port <port>:指定自动化监听端口。

示例:

  1. cli --auto /Users/username/demo --auto-port 9420

关闭当前项目窗口

通过命令行触发项目窗口关闭

—close <project_root>: 如果指定的 project_root 项目被打开,将会被自动关闭

示例:

  1. # 关闭指定项目
  2. cli --close /Users/username/demo

注:关闭项目时,会有弹窗提示是否阻止;如未阻止,将在 3 秒后关闭

关闭开发者工具

通过命令行退出开发者工具

—quit: 退出开发者工具

  1. # 退出开发者工具
  2. cli --quit

注:关闭开发者工具时,会有弹窗提示是否阻止;如未阻止,将在 3 秒后关闭