2026/10/27 17:43:29
教具插件介绍与启用
适用于 Whiteboard Android SDK 2.16.134,内嵌 Appliance Plugin 1.1.45。本章的 Version 条件指插件版本。
推荐在新接入房间中开启 enableAppliancePlugin,使用内嵌的高性能教具插件。插件负责笔迹绘制、元素选中和编辑、图片交互、文字编辑、撤销重做及多窗口中的教具显示,业务继续使用 SDK 的公开接口。
开启插件
Java
import com.herewhite.sdk.RoomParams;
import com.herewhite.sdk.WhiteSdkConfiguration;
import com.herewhite.sdk.domain.Region;
WhiteSdkConfiguration config = new WhiteSdkConfiguration("APP_IDENTIFIER", true);
config.setRegion(Region.cn);
config.setUseMultiViews(true);
config.setEnableAppliancePlugin(true);
RoomParams params = new RoomParams("ROOM_UUID", "ROOM_TOKEN", "CLIENT_UID");
params.setRegion(Region.cn);
params.setWritable(true);
params.setUsingFloatBar(true);
// config 传给 WhiteSdk 构造函数,params 传给 joinRoom。
插件开关在创建 WhiteSdk 前配置。appliancePluginOptions 放在 RoomParams,在调用 joinRoom 前设置。房间方法在 Promise<Room>.then 中取得 Room 后调用。
当前版本需同时配置 useMultiViews=true 与 enableAppliancePlugin=true。未启用动态配置且本地未设置时,插件开关默认 false;启用动态配置时,未显式配置的字段允许继承远端值。同一房间的互动端和只读显示端应一致启用插件,保证插件内容的同步显示;迁移已有房间时先核对已有内容的显示和编辑效果。
SDK 已内嵌插件和绘制资源,无需在本端工程单独安装 npm 包或配置 Worker URL。插件为白板提供绘制与编辑交互,业务应用仍需提供自己的教具切换按钮。
教具与操作
| 教具 | 用途 | 主要配置 |
|---|---|---|
| Pencil | 自由书写和标注 | 线条颜色、粗细;扩展线型见自定义教具 |
| Selector | 选中、移动、缩放元素;符合条件的单个图片可使用旋转手柄 | 内置属性栏与选择框样式 |
| Rectangle / Ellipse / Straight / Arrow | 绘制矩形、椭圆、直线和箭头 | 线条颜色与粗细 |
| Shape | 绘制三角形、菱形、五角星和气泡框 | shapeType;填充色和透明度见自定义教具 |
| Text | 输入和编辑文字 | 文字颜色、字号、文字编辑器选项 |
| Eraser | 擦除命中的整个可擦除元素 | 通过 Appliance.ERASER 选择 |
| Pencil Eraser | 擦除局部笔迹 | 通过本端教具入口选择 |
| Hand / Clicker | 移动视角、点击课件 | 通过本端教具入口选择 |
例如,入房成功后切换铅笔并设置颜色、粗细:
Java
import com.herewhite.sdk.domain.Appliance;
import com.herewhite.sdk.domain.MemberState;
MemberState pencil = new MemberState();
pencil.setCurrentApplianceName(Appliance.PENCIL);
pencil.setStrokeColor(new int[]{32, 102, 255});
pencil.setStrokeWidth(4);
room.setMemberState(pencil);
复制、删除、撤销和重做仍使用 SDK 的对应公开接口。只读用户用于显示内容,不开放写入或编辑操作。
扩展能力
| 功能 | 本端接入方式 |
|---|---|
| 铅笔、选择、图形、文字、图片及局部笔迹擦除 | 通过本端教具、元素和撤销重做接口操作 |
| 背景图加载状态、查询和失败恢复 | 本端提供查询、恢复及加载回调;插入接口见背景图文档 |
| Auto Shape | 通过业务自定义 MemberState 传递 autoShape 开关,见 Auto Shape 文档 |
按需求继续配置
公开方法签名见客户端 API。插件能力和具体接入选项以本章所标版本为准。
动态配置
需要远程调整教具参数时,参见动态配置。本地显式 extras 优先;未提供的字段允许继承远端 appliancePlugin.extras。SDK 内嵌绘制资源,回调继续在本端绑定。