跳到内容 跳到主导航 跳到页脚

运行调试

运行前的检查

安装opk是通过adb命令来完成的,在进行安装调试之前请先确定adb命令可用,并且机器人已经打开了调试模式。可以通过adb devices命令来查看机器人是否连接成功,并进入了开发模式。如果一切正常,它会返回可用调试的机器人设备。如果这一步没有得到正确的结果,可根据错误提示信息在百度搜索ADB相关问题,这一步和Android开发对adb的要求是一致。

查看到有设备之后,我们可以运行adb logcat,尝试查看机器人日志,如果能正常的满屏滚动日志说明机器人已经做好开发前的准备了。

安装运行

安装opk运行可直接将应用安装到机器人上,如果以前已经安装过该应用,会被覆盖,安装完成后可断开USB连接进行测试运行,需要安装jdk,否则运行run后,可能会存在无法成功安装OPK的情况。以下为安装运行指令:

orionos-sh run

注意安装成功后,需要重启小豹程序(“三指下拉”进入“应用中心”(如需输入密码,请输入密码),点击“小豹”程序,重新进入)。

将应用安装到机器人上,安装完成后默认还是在机器人的大表情界面,可通过应用注册的语音指令启动当前应用。语音指令在opk里的注册在index.js的intent里完成的,具体可参考应用基础知识中的应用注册。另外您需要在NLP后台配置语音->语音指令的链路。具体点击这里查看。

Debug调试

由于debug模式无法联动机器人trigger跳转系统,所以带trigger的opk无法使用debug模式进行调试。并且reactnative框架本身在debug上容易出现一些莫名其妙的问题,所以我们不推荐使用debug模式进行程序运行。机器人上的所有厂家预装opk,都是使用orionos-sh run模式开发。

机器人应用的Debug调试,原理是借用机器人的运行环境,运行电脑上的本地代码,所以Debug时需一直连接USB。Debug可实现代码的快速发布及支持断点调试,不会对应用覆盖安装,调试结束后,运行的还是已安装版本。Debug调试指令为:

orionos-sh debug

调试指令运行后会出现一个终端弹框,如以下左图所示,该弹框为RN服务,请不要关闭,在弹框上会显示加载进度,在加载过程中,机器人屏幕会显示黑屏,首次加载时间会比较长,请耐心等待加载完成,后续就会快很多。以下右图所示是debug指令运行后的操作界面,我们可以使用键盘上下键控制选择:重新加载立即将新修改的代码发布到机器人上,显示调试菜单可在机器人屏幕上显示出调试弹框,可在调试弹框中打开断点调试,选择退出会结束本次调试。

Debug调试默认值能进行代码的快速更新,不支持断点调试,如果进行断点调试,请选择显示调试菜单,在机器人上的调试弹框中点击“Debug JS Remotely”选项,然后就可以进行断点调试,目前我们支持 WebStorm 和 Chrome 两种方式进行JS代码的调试。

注:如果机器中装有多个版本的node,可能会出现找不到orionos-cli的错误,此时我们执行以下npm install -g orionos-cli –registry=https://npm.ainirobot.com/repository/eve-group/ 就可以解决了。

基于WebStorm进行调试

1. 在package.json中增加scripts配置

基于WebStorm的调试,就不需要再单独执行orionos-sh debug指令,当前配置可以在开始调试时自动执行。

"scripts": {
    /**其它配置*/
    "debug": "orionos-sh debug"
}

2. 增加Configuration

我们需要创建一个React Native 调试配置,在WebStorm的Run/Debug菜单中,选择Add configutations 或 Edit configrations,点击+号按钮,选择Rect Native, 如下图所示:

3. 配置Configuration

如上图所示,我们不需要安装apk,所以Build and launch application不勾选。点击底部Start React Native Bundler的编辑按钮,然后选择npm script,在Script中选择debug,debug是我们在第一步的时候配置的名称。

4. 开始调试

配置完成后我们点击Debug按钮就可以开始进行调试,断点调试默认未开启,具体开启方式可参考Debug调试文档说明。

基于Chrome进行调试

开启Chrome调试相对比较简单,在执行orionos-sh debug指令后,选择调试菜单,在机器人界面的调试弹框中点击“Debug JS Remotely”选项,会打开一个Chrome新的tab页,在Chrome的菜单中选择更多工具 -> 开发者工具,就可以在console中查看日志,在sources中进行断点调试,如下图所示:

这篇文章是否有帮助?

0