面板环境初始化
initPanelEnvironment 是涂鸦面板小程序的标准环境初始化工具。它不仅是一个 API,更是涂鸦面板标准交互规范的集成实现。通过一键调用,开发者可以快速为面板接入离线、蓝牙、OTA、故障提醒等一系列标准化能力。
Info
需引入 DeviceKit,且 @ray-js/ray 版本需高于 0.10.3。
快速上手
在应用入口或面板主页面尽早调用即可开启标准环境(当前面板小程序模板均已内置调用此 API):
核心能力
初始化面板环境 API 深度集成了以下标准交互能力:
1. 连接与离线保障
实时监测设备在线状态。针对 Wi-Fi 设备提供离线遮罩引导;针对蓝牙设备提供自动重连、权限检测及状态悬浮窗展示。
详情查阅:连接与离线逻辑说明
2. OTA 升级检查
实时检测设备固件更新情况,并根据优先级(强制/提醒)引导用户进行升级。
详情查阅:OTA 升级机制说明
3. 连云激活与设备监听
- 连云激活:对于需要激活的设备,进入面板后自动弹出提示。
- 基础监听:自动注册设备移除、状态变更等基础监听,简化业务复杂度。
4. 故障列表组件
当设备支持并上报 fault 类型的功能点时,自动弹出标准故障列表说明。目前仅支持 dpCode 为 fault 的功能点。
技术参考
类型定义
参数详解
bleCover
当显示蓝牙状态悬浮窗时,是否要添加覆盖层以阻止界面交互。通常情况下,如果有些功能可以在设备离线时使用(如:数据图表查看),则不需要覆盖住界面。
customTop
当使用自定义状态栏时,可通过该属性自定义蓝牙状态悬浮窗与顶部的距离。该参数接受 CSS 标准长度值(如: '100px', '10%'等)。
bleConnectType
在标准逻辑下,蓝牙设备的联网方式选择:
- 0:同时尝试手机直连和连接网关(默认)。
- 1:仅使用手机直连。
- 2:仅使用网关连接。
showBLEToast
在蓝牙设备连接成功或失败时,是否显示 Toast 提示。
showFault
若设置为 true,则使用内置能力展示设备故障。目前仅支持 dpCode 为 fault 的故障展示。
底层原子实现
initPanelEnvironment 基于以下底层 API 深度封装后实现:
- ty.panel.initPanelKit
- registerDeviceListListener
- getDeviceInfo
- getSystemInfoSync
- authorizeStatus
- openMiniWidget
- onWidgetDismiss
- offWidgetDismiss
- dismissMiniWidget
- authorize
- getDeviceOnlineType
- connectBluetoothDevice
- subscribeBLEConnectStatus
- onBLEConnectStatusChange
- onBluetoothAdapterStateChange
注意事项
- 标准化逻辑建议:
initPanelEnvironment提供的逻辑均为涂鸦面板的标准规范,我们建议开发者优先使用本接口,仅在特殊场景下才参考原子接口进行自定义。 - OTA 逻辑封闭性:OTA 升级机制(检测、弹窗及跳转)目前暂不支持开发者自定义实现,请务必通过内置能力完成。