76 lines
2.7 KiB
Markdown
76 lines
2.7 KiB
Markdown
# SDK 配置说明
|
||
|
||
English documentation: [SDK_Configuration.md](SDK_Configuration.md).
|
||
|
||
SDK 推荐使用 `FaceSdkSettings` 作为配置资产。`FaceModuleManager` 可以读取该资产,并同步到运行时配置。
|
||
|
||
## 默认配置资产
|
||
|
||
```text
|
||
Assets/Resources/AISU/SI-M1 Face SDK/FaceSdkSettings.asset
|
||
```
|
||
|
||
打开 `AISU/SI-M1 Face SDK/Settings` 可以加载、编辑和保存配置。
|
||
|
||
## FaceSdkSettings 字段
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|---|---|---|
|
||
| `TransportMode` | `FaceTransportMode` | `Auto`、`SerialPort` 或 `Mock` |
|
||
| `UseMockInEditor` | `bool` | Editor 下强制使用 Mock 通信 |
|
||
| `PortName` | `string` | 运行时串口号 |
|
||
| `BaudRate` | `int` | 运行时波特率 |
|
||
| `ReadBufferSize` | `int` | 运行时读取缓冲区 |
|
||
| `UseEditorSerialDebugParameters` | `bool` | Editor 下是否使用单独串口参数 |
|
||
| `EditorPortName` | `string` | Editor 调试串口号 |
|
||
| `EditorBaudRate` | `int` | Editor 调试波特率 |
|
||
| `EditorReadBufferSize` | `int` | Editor 调试读取缓冲区 |
|
||
| `MockResponseDelayFrames` | `int` | Mock 响应延迟帧数 |
|
||
| `AutoVerifyOnOpen` | `bool` | READY 后是否自动开启验证 |
|
||
| `AutoVerifyTimeout` | `byte` | 自动验证协议超时时间,单位秒 |
|
||
| `AutoVerifyResultIntervalMs` | `int` | 自动验证结果事件最小间隔 |
|
||
| `StopAutoVerifyBeforeExclusiveCommand` | `bool` | 独占命令前是否停止自动验证 |
|
||
| `ExclusiveCommandPolicy` | `FaceExclusiveCommandPolicy` | 自动验证期间执行独占命令的处理策略 |
|
||
| `DebugLogEnabled` | `bool` | 是否启用 SDK Debug 日志 |
|
||
| `RawLogEnabled` | `bool` | 是否派发原始 TX/RX 日志 |
|
||
| `LogPrefix` | `string` | 日志前缀 |
|
||
|
||
## TransportMode
|
||
|
||
| 模式 | 行为 |
|
||
|---|---|
|
||
| `Auto` | Editor 根据 `UseMockInEditor` 选择 Mock 或串口;Player 使用串口 |
|
||
| `SerialPort` | 使用 `SerialPortTransport` |
|
||
| `Mock` | 使用 `MockFaceModuleTransport` |
|
||
|
||
当 `UseMockInEditor = true` 时,Editor 使用 Mock 通信,不会打开真实串口。
|
||
|
||
## 自动验证
|
||
|
||
`AutoVerifyTimeout` 会发送给 SI-M1 模组,表示识别超时时间。
|
||
|
||
`AutoVerifyResultIntervalMs` 由 Unity SDK 处理,用于限制 `OnAutoVerifyResult` 的派发频率。设置为 `0` 时不做节流。
|
||
|
||
`StopAutoVerifyBeforeExclusiveCommand` 和 `ExclusiveCommandPolicy` 用于控制自动验证开启时,录入、用户管理、二维码、抓拍、特征等独占操作的行为。
|
||
|
||
## 运行时使用
|
||
|
||
```csharp
|
||
manager.ApplySettings(settings);
|
||
manager.Open();
|
||
```
|
||
|
||
快速配置:
|
||
|
||
```csharp
|
||
manager.Configure(useMockInEditor: true, portName: "COM3", baudRate: 115200);
|
||
manager.Open();
|
||
```
|
||
|
||
自定义通信层:
|
||
|
||
```csharp
|
||
manager.ConfigureTransport(customTransport);
|
||
manager.Open();
|
||
```
|