permissions-registration

Pendaftaran aplikasi dengan Meta AI dan alur izin perangkat

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

Lebih banyak skill dari facebook

gc-safe-coding
facebook
Untuk penjelasan lengkap dan alasannya, lihat doc/GCSafeCoding.md .
app-review-prep
facebook
Siapkan aplikasi Meta untuk App Review — periksa status terkini, persyaratan yang belum terpenuhi, hak akses yang diberikan, dan riwayat pengiriman. Gunakan sebelum mengirimkan aplikasi…
api-health
facebook
Pantau kesehatan API untuk aplikasi Meta — periksa batas tarif, volume panggilan, dan penghentian API. Gunakan untuk mendiagnosis pembatasan, merencanakan kapasitas, atau bersiap untuk versi API…
debug-webhooks
facebook
Atasi masalah webhook untuk aplikasi Meta — periksa langganan aktif, identifikasi salah konfigurasi, dan kirim payload uji untuk memverifikasi pengiriman. Gunakan ketika…
api-integration
facebook
Pandu pengembang melalui penyiapan integrasi API Meta dari awal — temukan API yang tepat, ambil panduan penyiapan, persyaratan autentikasi,…
webhook-setup
facebook
Siapkan webhook untuk aplikasi Meta secara end-to-end — temukan topik yang tersedia, berlangganan ke bidang, dan verifikasi dengan payload uji. Gunakan saat mengonfigurasi webhook untuk…
test-ui
facebook
Uji sistem UI (PanelUI, ScreenSpace) terhadap contoh poke menggunakan CLI iwsdk.
flags
facebook
Periksa dan bandingkan status bendera fitur di seluruh saluran rilis React. Lihat semua bendera di berbagai saluran (www, www-modern, canary, next, experimental, varian rn) atau bandingkan saluran tertentu dengan --diff. Format keluaran mencakup tampilan tabel default, ekspor CSV, dan pengelompokan status pembersihan. Status bendera ditunjukkan dengan simbol: aktif (✅), nonaktif (❌), pengujian varian (🧪), hanya profiling (📊). Kendala umum: bendera __VARIANT__ diuji dalam kedua status di www; gunakan --diff untuk menemukan perbedaan yang berarti...