Le SDK Matter fournit une API basée sur Task
pour lancer la mise en service avec Matter
avec des paramètres variables, observer le résultat et éventuellement ajouter
des identifiants, il peut arriver qu'un seul point d'entrée d'un code QR
nécessaires. Par exemple, d'une application
appareil photo généralisée qui souhaite
fournir un raccourci pour démarrer la mise en service lorsqu'un code QR est détecté dans la
viseur.
Avant de continuer, assurez-vous Les conditions préalables sont remplies.
Codes QR Matter
Les codes QR Matter se présentent sous la forme générale
MT:Y3.13OTB00KA0648G00
, où le préfixe MT:
est une constante et le suffixe
est une chaîne encodée en base38 avec l'alphabet [A-Z0-9.-]
. Le suffixe doit
comporter toujours au moins 19 caractères, mais peut également être plus long.
Pour déterminer si un code QR représente un code QR Matter, vous pouvez utiliser l'expression régulière suivante en Java:
fun isMatterQrCode(value: String): Boolean { return value.matches(Regex("""MT:[A-Z0-9.-]{19,}""")) }
Par exemple, le code QR suivant représente MT:Y3.13OTB00KA0648G00
:
Format de l'intent
Ce format de code QR peut être utilisé comme URI pour lancer le flux de mise en service
en envoyant une Intent
avec ACTION_VIEW
, l'URI spécifié dans data
et
package cible défini sur les services Google Play:
fun startCommissioning(context: Context, qrCodeString: String): Boolean {
val intent =
Intent(Intent.ACTION_VIEW)
.setData(Uri.parse(qrCodeString))
.setPackage("com.google.android.gms")
try {
context.startActivity(intent)
return true
} catch (ex: ActivityNotFoundException) {
// Supporting Play Services version not available.
return false
}
}
Application exemple
Cet exemple d'application montre comment mettre en service un appareil Matter lorsqu'un Le code QR conforme à Matter apparaît dans le viseur de l'appareil photo.
Télécharger l'application exemple de mise en service basée sur l'intent
Le code de cet exemple d'application exploite les bibliothèques Android suivantes:
Les documents suivants sont également utiles pour comprendre le code écrit pour cette application exemple:
Utilisation
Au démarrage de l'application, l'aperçu de l'appareil photo s'affiche à l'écran. Lorsqu'un code QR pour un appareil Matter, une boîte de dialogue s'affiche pour confirmer la mise en service de cet appareil Matter doit être:
Si la mise en service est confirmée, l'outil de sélection d'applications pris en charge par Lancement du SDK Google Home pour mobile.
Au départ, le sélecteur d'applications affiche un ensemble d'applications de mise en service par défaut (par exemple, l'application Google Home, comme illustré sur la première capture d'écran). Si vous appuyez sur "Choisir une autre application", les autres applications compatibles avec le processus de mise en service du SDK Google Home pour mobile s'affichent (voir la deuxième capture d'écran).
L'application sélectionnée est alors lancée pour effectuer la mise en service de l'appareil.