permissions-registration

Регистрация приложения в Meta AI и потоки разрешений устройства

npx skills add https://github.com/facebook/meta-wearables-dat-android --skill permissions-registration

Permissions & Registration (Android)

Register your app with Meta AI, then request the device permissions it needs.

The DAT SDK separates two steps:

  1. Registration: The user connects your app to Meta AI.
  2. 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 ->
        // Update your registration UI
    }
}

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

ModeRegistration behavior
Developer ModeUse mwdat_application_id = 0 and mwdat_client_token = 0 manifest placeholders for local development
ProductionUse 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

Больше skills от facebook

gc-safe-coding
facebook
Полное объяснение и обоснование см. в doc/GCSafeCoding.md.
app-review-prep
facebook
Подготовьте приложение Meta к проверке App Review — проверяет текущий статус, невыполненные требования, предоставленные привилегии и историю отправок. Используйте перед отправкой приложения…
api-health
facebook
Мониторинг состояния API для приложения Meta — проверка лимитов запросов, объема вызовов и устаревания API. Используется для диагностики троттлинга, планирования мощности или подготовки к смене версии API…
debug-webhooks
facebook
Устранение неполадок с вебхуками для приложения Meta — проверка активных подписок, выявление ошибок конфигурации и отправка тестовых payload для проверки доставки. Используйте, когда…
api-integration
facebook
Провести разработчика через настройку интеграции Meta API с нуля — подобрать нужные API, найти руководства по настройке, требования к аутентификации,…
webhook-setup
facebook
Настройте вебхуки для приложения Meta полностью — узнайте доступные темы, подпишитесь на поля и проверьте с помощью тестового payload. Используйте при настройке вебхуков для…
test-ui
facebook
Тестирование системы UI (PanelUI, ScreenSpace) на примере poke с помощью CLI iwsdk.
flags
facebook
Проверка и сравнение состояний функциональных флагов в каналах релиза React. Просмотр всех флагов по каналам (www, www-modern, canary, next, experimental, варианты rn) или сравнение конкретных каналов с помощью --diff. Форматы вывода: таблица по умолчанию, экспорт CSV и группировка по статусу очистки. Состояния флагов обозначены символами: включено (✅), отключено (❌), тестирование вариантов (🧪), только профилирование (📊). Частая ошибка: флаги __VARIANT__ тестируются в обоих состояниях на www; используйте --diff для выявления значимых...