| name | permissions-registration |
| description | App registration with Meta AI and device permission flows |
Permissions & Registration (Android)
Register your app with Meta AI, then request the device permissions it needs.
The DAT SDK separates two steps:
- Registration: The user connects your app to Meta AI.
- Device permissions: After registration, your app requests capabilities such as camera access.
Both flows depend on the Meta AI app being installed on the phone.
Start registration
Wearables.startRegistration(activity)
Observe registration state:
lifecycleScope.launch {
Wearables.registrationState.collect { state ->
}
}
To unregister:
Wearables.startUnregistration(activity)
Check permission status
checkPermissionStatus(...) is a suspend API that returns a DatResult.
lifecycleScope.launch {
Wearables.checkPermissionStatus(Permission.CAMERA)
.onSuccess { status ->
if (status == PermissionStatus.Granted) {
startStreaming()
}
}
.onFailure { error, _ ->
showPermissionError(error.description)
}
}
Request a permission
Use Wearables.RequestPermissionContract() with the Activity Result API:
private val permissionLauncher =
registerForActivityResult(Wearables.RequestPermissionContract()) { result ->
result.onSuccess { status ->
if (status == PermissionStatus.Granted) {
startStreaming()
}
}.onFailure { error, _ ->
showPermissionError(error.description)
}
}
fun requestCameraPermission() {
permissionLauncher.launch(Permission.CAMERA)
}
Users can allow once or allow always through the Meta AI flow.
Developer Mode vs production
| Mode | Registration behavior |
|---|
| Developer Mode | Use mwdat_application_id = 0 and mwdat_client_token = 0 manifest placeholders for local development |
| Production | Use the application ID and client token assigned in the Wearables Developer Center |
For development builds, enable Developer Mode in the Meta AI app before testing registration and permissions.
Prerequisites
- Internet connection for registration
- Meta AI app installed on the phone
- Callback URI scheme configured in
AndroidManifest.xml
- Bluetooth permission granted on Android
Links