Flutter
Faceplugin Face Recognition Flutter SDK. On-premise 1:1 and 1:N matching with 2D liveness. face_recognition_sdk plugin for Android and iOS.
Fully on-premise Face Recognition SDK for Flutter. Package: face_recognition_sdk. Same native engines as the Android and iOS Face Recognition SDKs.
All processing stays on the device. No biometric data is sent to Faceplugin cloud.
Code
How to Run
Place native runtimes
Android
facerecognitionsdk.aar
example/android/libfacesdk/
Copy example/android/libfacesdk/ into your app android/libfacesdk/ and include(":libfacesdk")
iOS
three frameworks
ios/Frameworks/
Plugin checkout ios/Frameworks/
Android Google Drive: facerecognitionsdk.aar
iOS Google Drive: frameworks (
facerecognitionsdk,FaceRecognitionEngine,onnxruntime)
On a Mac after placing iOS frameworks: dart run tool/bootstrap.dart (builds matching .xcframeworks) then cd example/ios && pod install. CocoaPods links the .xcframeworks into the plugin pod — plain .framework alone often leaves undefined FaceRecognitionSDK symbols under use_frameworks!.
Keep demo ids so the included license works:
Android package name
com.faceplugin.facerecognitionsdk
iOS bundle identifier
com.faceplugin.facerecognition.app
Flutter
3.44+ (see pubspec.yaml)
Android
minSdk 24, physical device recommended
iOS
iOS 13+, physical device recommended
Demo tiles: Enroll, Identify, Capture, Attribute, Settings, About.
Screenshots
The gallery is Android sample UI from faceplugin-assets. The Flutter plugin wraps the same native engines; there is no separate Flutter photoshoot in these docs.



License
Licenses are offline. Demo keys live in example/lib/core/constants/license.dart. Request a new license key for your own app.
Default thresholds in the example Settings: identify 0.67, liveness 0.5, pose 40°, eye-close 0.5. You pass these as Dart parameters — change them for your product.
Integrate into your own app
You need the Flutter plugin + native runtimes. You do not need the example UI or person database.
Then copy runtimes (table above), set your Android package name / iOS bundle identifier, add camera + photo-library permissions, and request a license for your own app.
Optional oval UI: FaceCapture from package:face_recognition_sdk/capture.
APIs
Call order: getMachineCode → setActivation → init → detect / VideoWorker → deinit.
Status codes: 0 Success, 1 Invalid license, 2 Expired, 3 Not activated, 4 Init failed.
setActivation: This API is used to activate the SDK
init: This API is used to initialize the SDK
getMachineCode: This API is used to retrieve the machine code
faceDetection: This API is used to detect faces
Boxes include geometry (x1,y1,x2,y2), pose, liveness / quality / eyes / occlusion, age / gender / emotion / mask / glasses, optional attributes, and landmarks + landmarkCount.
templateExtraction: This API is used to extract face template
similarity: This API is used to calculate similarity between two templates
detect: This API is used to detect faces and return engine JSON
Also: extractFeature, quality, cropFace, setLandmarkMode / getLandmarkMode, getLicenseStatus, lastLicenseError, deinit.
VideoWorker: This API is used for live 1:N identify
Request a License & Support · Contact us
FAQ
Package? face_recognition_sdk.
Screenshots? The gallery uses Android sample UI. The plugin wraps native Android and iOS engines.
Face Liveness Flutter SDK? None public.
Related documentation
There is no public Face Liveness Flutter SDK — use Identify 2D liveness or native Android/iOS Liveness.
Last updated