Package-level declarations

FaceShareGuard (the check), FaceCheckPolicy (which credentials, how much liveness, the match bar), FaceModel (the model file) and FaceCheckHost (only for apps that draw their own screens on iOS).

Types

Link copied to clipboard
data class FaceCheckPolicy(val docTypes: Set<String>, val liveness: Liveness = Liveness.QUICK, val similarityThreshold: Float = 0.7f, val maxAttempts: Int = 3)

The face check's policy.

Link copied to clipboard
class FaceModel

The face-recognition model the check runs on: FaceNet, 160 × 160 input, 512-value embeddings, as a LiteRT / TensorFlow Lite flat buffer (facenet_512.tflite, about 23 MB). The SDK does not bundle it; ship it with your app (Android assets, an iOS bundle resource) and pass its bytes here once at start-up.

Link copied to clipboard
class FaceShareGuard(val policy: FaceCheckPolicy, model: FaceModel) : ShareGuard

"Prove it's you": before a protected credential is shared, the holder looks into the front camera, passes a short liveness step and is matched against the credential's own photo. Nothing is stored and no image leaves the phone.

Link copied to clipboard

How much the holder has to do in front of the camera before the face match runs.

Functions

Link copied to clipboard
fun FaceCheckHost(guard: FaceShareGuard? = FaceShareGuard.installed)

Shows the face check whenever guard needs one. Only for a wallet UI built from your own Compose screens: compose it once, last, at the root so it draws over every screen. The ready-made screens already show the check, and on Android it attaches itself to the presenting screen.