更新时间:2025-01-10 GMT+08:00
分享

事件

接口列表

表1 事件接口列表

接口

描述

参数名

参数类型

参数说明

返回值

addEvent

侦听事件。

evtName

string

事件ID。

根据实际情况选择Vps定位结果事件ID、Vps状态事件ID或scene实例事件ID。

void

cb

Function

侦听到事件后,触发的回调函数。

cbThis

any

当前实例。

removeEvent

移除侦听事件。

evtName

string

事件ID。

根据实际情况选择Vps定位结果事件ID、Vps状态事件ID或scene实例事件ID。

void

cb

Function

回调函数。

dispatchEvent

派发事件。

evtName

string

事件ID。

根据实际情况选择Vps定位结果事件ID、Vps状态事件ID或scene实例事件ID。

void

params

{

key: value,

key2: value2

}

事件携带的信息,键值对形式。

接口调用示例

  • 侦听事件

    用于侦听事件,并触发侦听函数。

    XRClient.addEvent(GlobalBus.VPS_RESULT, this.onVpsResult,this);
    定义侦听函数。
    onVpsResult(evt) {
         XRClient.log("onVpsResult status" + evt.data.status);  
         XRClient.log("onVpsResult info" + evt.data.info);
         if (evt.data.status) {
            XRClient.log("VPS success");
            wx.showToast({
              title: 'success',
              icon: 'success',
              duration: 2000
            })        
          } else {
            XRClient.log("VPS failure");
            wx.showToast({
              title: 'failure',
              icon: 'none',
              duration: 2000
            })
          }
     },
  • 移除侦听事件
    用于移除事件,移除后侦听函数不再触发。
    XRClient.removeEvent(GlobalBus.VPS_RESULT, this.onVpsResult);
  • 派发事件
    用于派发事件,配合侦听事件使用,接收到此处派发的事件,并做相应处理。
    XRClient.dispatchEvent('user_define', { status: false, info: 'test' } );

SDK内部事件

表2 SDK内部事件列表

事件名称

描述

携带数据

数据类型

数据说明

事件说明

VPS_RESULT

Vps定位结果事件。

status

boolean

定位是否成功。

Vps定位结果返回时触发该事件。

info

string

具体定位结果信息。

VPS_TRACKING

Vps跟踪状态事件。

status

boolean

状态是否为跟踪中。

Vps跟踪状态变化时触发。

SCENE_INSTANCE

scene实例事件。

info

object

scene实例。

初始化视觉定位模块时,派发scene实例事件。

相关文档