Skip to main content
Version: 3.x

VKSession

vision kit 会话对象

支持情况:

参考文档

方法​

参数类型说明
statekeyof State会话状态
configConfig会话配置
cameraSizeSize相机尺寸

cancelAnimationFrame​

取消由 requestAnimationFrame 添加到计划中的动画帧请求

支持情况:

参考文档

(requestID: number) => void
参数类型
requestIDnumber

destroy​

销毁会话

支持情况:

参考文档

() => void

getVKFrame​

获取帧对象,每调用一次都会触发一次帧分析过程

支持情况:

参考文档

(width: number, height: number) => VKFrame
参数类型说明
widthnumber宽度
heightnumber高度

hitTest​

触摸检测,v1 版本只支持单平面(即 hitTest 生成一次平面后,后续 hitTest 均不会再生成平面,而是以之前生成的平面为基础进行检测)。

如果需要重新识别其他平面,可以在调用此方法时将 reset 参数置为 true。

支持情况:

参考文档

(x: number, y: number, reset?: boolean) => hitTestResult[]
参数类型说明
xnumber相对视窗的横坐标,取值范围为 [0, 1],0 为左边缘,1 为右边缘
ynumber相对视窗的纵坐标,取值范围为 [0, 1],0 为上边缘,1 为下边缘
resetboolean是否需要重新识别其他平面,v2 版本不再需要此参数

off​

取消监听会话事件。

支持情况:

参考文档

(eventName: string, fn: Function) => void
参数类型说明
eventNamestring事件名称
fnFunction事件监听函数

on​

监听会话事件。

支持情况:

参考文档

(eventName: string, fn: Function) => void
参数类型说明
eventNamestring事件名称
fnFunction事件监听函数

requestAnimationFrame​

在下次进行重绘时执行。

支持情况:

参考文档

(callback: Function) => number
参数类型说明
callbackFunction执行函数

start​

开启会话。

支持情况:

参考文档

(callback: (status: keyof StartStatus) => void) => void
参数类型说明
callback(status: keyof StartStatus) => void开启会话回调

stop​

停止会话。

支持情况:

参考文档

() => void

参数​

State​

state 的合法值

参数说明
0不可用
1运行中
2暂停中

Config​

会话配置

参数类型说明
versionkeyof version不可用
tracktrack运行中

version​

vision kit 版本

参数说明
v1旧版本
v2v2 版本,目前只有 iOS 基础库 2.22.0 以上支持

track​

跟踪配置

参数类型说明
planeplane平面跟踪配置

plane​

平面跟踪配置

参数类型说明
modekeyof PlaneMode平面跟踪配置模式

PlaneMode​

平面跟踪配置模式合法值

参数说明
1检测横向平面
2检测纵向平面,只有 v2 版本支持
3检测横向和纵向平面,只有 v2 版本支持

Size​

相机尺寸

参数类型说明
widthnumber宽度
heightnumber高度

hitTestResult​

hitTest 检测结果

参数类型说明
transformFloat32Array包含位置、旋转、放缩信息的矩阵,以列为主序

StartStatus​

start status 的合法值

参数说明
0成功
2000000系统错误
2000001参数错误
2000002设备不支持
2000003系统不支持
2003000会话不可用
2003001未开启系统相机权限
2003002未开启小程序相机权限

API 支持度​

API微信小程序H5React Native
VKSession✔️
VKSession.cancelAnimationFrame✔️
VKSession.destroy✔️
VKSession.getVKFrame✔️
VKSession.hitTest✔️
VKSession.off✔️
VKSession.on✔️
VKSession.requestAnimationFrame✔️
VKSession.start✔️
VKSession.stop✔️