local_auth_watchos 0.0.1
local_auth_watchos: ^0.0.1 copied to clipboard
watchOS implementation of the local_auth plugin, authenticating the wearer with the device passcode through LocalAuthentication via dart:ffi.
local_auth_watchos #
The watchOS implementation of local_auth.
Backed by LocalAuthentication (LAContext, available on watchOS 9+) over
dart:ffi. evaluatePolicy is asynchronous, so the native side caches the
result and the Dart side polls it.
Scaffolded by
flutter-watchos plugin portfromlocal_auth_darwin, then implemented and verified by hand.
Usage #
This is a federated plugin implementation. Apps that already depend on
local_auth and target watchOS only need to add this package alongside it:
dependencies:
local_auth: ^<latest>
local_auth_watchos: ^0.0.1
The plugin registers automatically via Flutter's federated registry — no explicit imports required from app code.
Behaviour on watchOS #
The watch has no Face ID / Touch ID, so only device-owner authentication (passcode / wrist unlock) is offered:
| Method | watchOS |
|---|---|
authenticate (device-owner) |
supported (watchOS 9+) |
authenticate with biometricOnly: true |
fails (no biometry) |
deviceSupportsBiometrics |
always false |
getEnrolledBiometrics |
always empty |
isDeviceSupported |
true when a passcode is set |
stopAuthentication |
supported |
Status #
| Platform | Implemented |
|---|---|
Apple Watch (watchos) |
yes (device-owner auth, watchOS 9+) |
Watch simulator (watchsimulator) |
query methods verified; interactive auth needs a device |
The query methods are verified on the simulator (example/integration_test);
the interactive passcode prompt is verified on a physical Apple Watch.
License #
The FlutterWatch Authors under a BSD-3-Clause license. See LICENSE for the full text.