# facial_liveness_detection_flutter_plugin
**Repository Path**: szrd2023/facial_liveness_detection_flutter_plugin
## Basic Information
- **Project Name**: facial_liveness_detection_flutter_plugin
- **Description**: 活体检测(Android, IOS) FLUTTER 插件
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-12-07
- **Last Updated**: 2025-12-26
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## 概述
人脸活体检测插件,支持静默、炫彩、眨眼、张嘴、摇头、点头、远近及随意动作组合,覆盖 Android / iOS / H5 / 小程序 等多端形态(可用于实人认证、刷脸认证、活体检测等场景)。
- 插件地址: https://pub.dev/packages/facial_liveness_detection_flutter_plugin
- H5 体验 DEMO: https://dev.esandcloud.com/h5demo/esand/living
## 特性
- 多动作组合:单次最多支持 4 组组合动作
- 可选视频录制:支持将本次认证视频保存到本地
- 丰富的界面定制:进度条、文字、背景、渐变色、导航样式等
- 多语言:`CN`、`TCN`、`EN`、`JP`、`KR`、`THA`
- 统一错误码:便于接入与排查
## 安装
- 在项目 `pubspec.yaml` 中添加依赖:
```yaml
dependencies:
facial_liveness_detection_flutter_plugin: ^1.6.0
```
- 执行:`flutter pub get`
## 平台配置
- iOS
- iOS 11+
- 在 `Info.plist` 增加相机权限:
```xml
NSCameraUsageDescription
需要使用相机进行人脸活体检测
```
- 若开启视频录制,可能需要麦克风权限:
```xml
NSMicrophoneUsageDescription
需要使用麦克风以优化录制体验
```
- Android
- 确保应用已声明相机权限(插件在运行期进行权限处理):
```xml
```
## 快速开始
```dart
import 'package:facial_liveness_detection_flutter_plugin/facial_liveness_detection_flutter_plugin.dart';
final plugin = FacialLivenessDetectionFlutterPlugin();
// 1) 初始化引擎
plugin.initEngine();
// 2) 初始化认证(示例:远近 + 眨眼,并开启录制)
final initRes = await plugin.verifyInit({
"livingType": 12,
"recordVideo": true,
"language": "CN",
"textColor": "#333333",
"progressBgColor": "#F3F4F6",
});
// 服务端获取到 token 后,3) 发起活体认证
final verifyRes = await plugin.startLivingDetect({
"token": "<服务端返回的token>",
"cameraID": "REAR"
});
```
## API
### `void initEngine()`
- 功能:全局初始化引擎,必须在调用其他方法前执行
- 入参:无
- 返回:无返回值(同步方法)
- 注意:此方法会调用 `EsLivingDetectionManager.Init()` 进行全局初始化
### `Future