开发

开发和调试

名词解释

  • 本地宿主配置目录

    本地宿主配置目录就是文档中 demo 解压的目录,可以解压到任意目录通过命令行参数传入。

  • 宿主配置

    宿主配置包含一个 json 配置以及一个提供 util 方法的 js ,为模拟器运行提供必要的数据,以及对应的模拟器扩展。

  • 模拟器

    模使用 electron 的 webview 实现的一套小程序运行环境。

    具体小程序运行环境、以及 master、slave 的概念请查看框架文档。 todo 框架文档链接

  • 模拟器扩展

    模拟器扩展是一种用于实现 native 的 API 和组件的扩展,由模拟器来管理。
    详细说明见开发模拟器扩展

开发

百度开发者工具基于 electron,了解 electron 相关知识会更有助于理解工具内的具体实现,https://electronjs.org/

宿主开发时,可以使用自己习惯的编辑器,打开本地宿主配置目录开发。如何开发宿主配置、配置插件、扩展 API 和组件后面会详细说明,

调试

开发者工具提供了主界面渲染进程和 simulator 的 webview 的调试能力,具体的调试方式和普通前端开发的调试基本一致。

  • 主界面调试可以直接使用快捷键 Alt+Cmd+I/Ctrl+Shift+I 或者 菜单栏 -> 调试 -> 调试开发者工具 呼出 chromium 的 devtools 进行调试;
  • master 的调试可以直接使用小程序的调试器
  • slave 调试可以点击
    菜单栏 -> 调试 -> 调试当前 slave 或者
    在模拟器的 slave 菜单上右键 -> 调试当前 webview 来打开 devtools ;
    • 当修改了模拟器的 master、slave 代码时,通过 Cmd+R/Ctrl+R 或菜单栏上的刷新按钮,刷新模拟器即可生效。
    • 当修改了模拟器的 form 代码时,需要重新进入项目界面才会生效。
    • 当修改了宿主配置时,需要点击菜单 -> 调试 -> 重启重新启动开发者工具,代码才会生效。

当宿主配置出错时,可能会导致主界面无法启动,使用终端打开时,可以直接查看日志,非终端方式打开时,此时可以在日志文件中查看报错。日志文件位置:

  • mac系统文件位置 ~/Library/Logs/百度开发者工具/log.log
  • windows系统文件位置 %USERPROFILE%\AppData\Roaming\百度开发者工具\log.log

todo 优化流程,考虑如何提供自动刷新方法

发布

宿主需要将宿主配置目录(对应的是 demo 项目内 ide/demo 这个目录)压缩成zip包后,提交给百度侧开源联盟平台(开源联盟平台-设置-开发设置-拓展信息-专有能力插件包),当百度侧收到宿主配置后,会验证功能,审核通过,宿主再次返回开源联盟平台,操作发布上线,上线后会下发到开发者工具内。

流程图