115 lines
2.3 KiB
Markdown
115 lines
2.3 KiB
Markdown
# SDK 快速开始
|
||
|
||
English documentation: [SDK_QuickStart.md](SDK_QuickStart.md).
|
||
|
||
## 1. 配置
|
||
|
||
打开 Unity 菜单:
|
||
|
||
```text
|
||
AISU/SI-M1 Face SDK/Settings
|
||
```
|
||
|
||
默认配置资产路径:
|
||
|
||
```text
|
||
Assets/Resources/AISU/SI-M1 Face SDK/FaceSdkSettings.asset
|
||
```
|
||
|
||
常用配置:
|
||
|
||
- 通信模式
|
||
- 运行时串口号和波特率
|
||
- Editor 串口调试参数
|
||
- Mock 模式
|
||
- 自动验证选项
|
||
- Debug 日志和原始协议日志
|
||
|
||
## 2. 场景 Manager
|
||
|
||
在场景中添加一个 `FaceModuleManager` 并绑定配置资产。每个场景只保留一个 Manager,避免重复打开串口和重复派发回调。
|
||
|
||
## 3. 最小代码
|
||
|
||
```csharp
|
||
using Aisu.SIM1.Face.Core;
|
||
using UnityEngine;
|
||
|
||
public sealed class FaceExample : MonoBehaviour
|
||
{
|
||
[SerializeField] private FaceModuleManager manager;
|
||
|
||
private async void Start()
|
||
{
|
||
manager.Open();
|
||
await manager.WaitReadyAsync(5000);
|
||
|
||
var status = await manager.Basic.GetStatusAsync();
|
||
var version = await manager.Basic.GetVersionAsync();
|
||
Debug.Log("Status: " + status);
|
||
Debug.Log("Version: " + version);
|
||
}
|
||
|
||
private void OnApplicationQuit()
|
||
{
|
||
manager?.Close();
|
||
}
|
||
}
|
||
```
|
||
|
||
## 4. 常用操作
|
||
|
||
人脸验证:
|
||
|
||
```csharp
|
||
var result = await manager.Verify.VerifyAsync(timeout: 10);
|
||
if (result.Success)
|
||
{
|
||
Debug.Log("UserId: " + result.UserId);
|
||
Debug.Log("UserName: " + result.UserName);
|
||
}
|
||
```
|
||
|
||
人脸录入:
|
||
|
||
```csharp
|
||
var enroll = await manager.Enrollment.EnrollSingleAsync(
|
||
admin: false,
|
||
userName: "Tester",
|
||
timeout: 20);
|
||
```
|
||
|
||
用户列表:
|
||
|
||
```csharp
|
||
var ids = await manager.Users.GetAllUserIdsAsync();
|
||
```
|
||
|
||
自动验证:
|
||
|
||
```csharp
|
||
manager.OnAutoVerifyResult += result =>
|
||
{
|
||
Debug.Log("AutoVerify: " + result.ResultCode);
|
||
};
|
||
|
||
var control = await manager.StartAutoVerifyAsync(timeout: 10);
|
||
if (!control.Success)
|
||
{
|
||
Debug.LogError("AutoVerify start failed: " + control.ResultCode);
|
||
}
|
||
|
||
await manager.StopFaceOperationAsync();
|
||
```
|
||
|
||
## 5. Samples
|
||
|
||
打开 `AISU/SI-M1 Face SDK/Settings`,点击 `Import Demos`,然后打开:
|
||
|
||
```text
|
||
Assets/Samples/AISU SI-M1 Face SDK/SIM1FaceDemo/Scenes/FaceModuleDemo.unity
|
||
Assets/Samples/AISU SI-M1 Face SDK/FaceDetectionDemo/Scenes/FaceDetectionDemo.unity
|
||
```
|
||
|
||
`Packages/xin.aisu.si-m1.face/Samples` 下的场景是只读包内容,不要直接打开。
|