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

设置opk为首页

机器人支持自定义首页的功能(首页指机器人进入小豹后,启动的页面)。目前机器人启动后的首页在 portal opk 中,如果需要自定义首页,需要开发人员开发自定义的 portal opk,来设置为系统默认启动的 opk。设置成功后,后续进入小豹,将会启动自定义的首页opk。

下面将系统当前的首页 opk 简称为:默认 portal,开发人员自定义的首页 opk 简称为:自定义 portal 
注:豹小秘mini使用此功能需Rom版本>= 6.8

新建一个插件式opk

创建插件式opk的方法,参考文档的【入门指南】-【创建应用】

注册首页所需场景

opk创建完成后,在项目根目录下的index.js文件中注册场景。需要注册的场景分为

  • 开发者自己开发的场景页面
  • 需要替换的场景页面

注册自己的场景

默认在index.js中第一个注册的场景为默认启动场景,比如下图所示的A就是opk启动时默认的启动场景。后面可以继续注册项目中的其他场景。

需要替换的场景

目前有以下三个需要替换的场景,场景替换的方式是在index.js中注册相同的appKey(因为在系统默认的 portal 内已经注册过下面三个场景,所以在自定义 portal 开发中需要再次注册,覆盖原本的场景)。其中的component,指定到项目的具体页面。

  • wakeUp:大眼睛画面通道,系统默认功能中有部分场景结束使用后,会跳转至wakeup场景。此处替换,使能从其他场景返回至自定义portal,而不是系统默认portal
  • home:进入小豹后的首页,系统默认功能中有部分场景结束使用后,例如天气、导航等结束后,会跳转至home场景。此处替换,使能从其他场景返回至自定义portal的home场景,而不是系统默认portal的home场景
  • idle:推上充电桩时,会切换到idle场景

在接待后台设置为默认opk

opk开发完后,需要先上架并发布,才能在接待后台的应用中心中设置为默认opk。

在接待后台【应用中心】-【已安装应用】中,点击“通用设置”,在默认启动技能中把开发的opk设置为默认启动技能。

注意事项

  • 如果需要跳转到其他功能场景,且语音链路优先级较高,需要在当前页面对应的voice中处理,写trigger进行跳转。
  • 如果默认的场景开始的时候需要关闭大眼睛,目前必须延时关闭,不然会导致后续所有使用到大眼睛的控件黑屏问题,可参照以下实现(onStart与onStop)。
const TAG = 'DemoViewModel';
export class DemoViewModel extends BaseViewModel {
    private mTimer: any;
    public constructor() {
        super('demo');
    }
    public onStart(): void {
        console.log(TAG, 'onStart');
        this.mTimer = setTimeout((): void =>{
            this.hideEmojiPlayer();
        }, 200);
    }
    public onStop(): void {
        console.log(TAG, 'onStop');
        if (this.mTimer) {
            clearTimeout(this.mTimer);
        }
    }
}
  • 第一次发布后,后续可直接 orionos run 相同 appid 的 opk 进行开发与调试,不需要每次改动都发版。

此处提供一个自定义开发portal的实例,可以点击进行下载 :自定义首页 portal实例

这篇文章是否有帮助?

1