Prowizje od intencji oparte na intencjach

Pakiet Matter SDK udostępnia interfejs API oparty na interfejsie Task, który umożliwia rozpoczęcie uruchamiania Matter przy zmiennych parametrach, obserwacji wyników i opcjonalnie dodawanie danych logowania, zdarzają się sytuacje, w których punkt wejścia zawiera tylko kod QR niezbędną. Na przykład w ogólnej aplikacji aparatu, która chce wskaż skrót, aby rozpocząć uruchomienie, gdy w aplikacji pojawi się kod QR wizjer.

Zanim przejdziesz dalej, upewnij się, że wszystkie Spełniono wymagania wstępne.

Kody QR w standardzie Matter

Kody QR Matter przyjmują ogólną postać MT:Y3.13OTB00KA0648G00, gdzie prefiks MT: jest stałą i sufiks to ciąg zakodowany w formacie 38 przy użyciu alfabetu [A-Z0-9.-]. Sufiks musi zawsze mieć co najmniej 19 znaków, ale może też być dłuższy.

Aby określić, czy kod QR reprezentuje kod QR w standardzie Matter, można to zrobić za pomocą następujące wyrażenie regularne w Javie:

fun isMatterQrCode(value: String): Boolean {
  return value.matches(Regex("""MT:[A-Z0-9.-]{19,}"""))
}

Na przykład ten kod QR reprezentuje MT:Y3.13OTB00KA0648G00:

Przykład kodu QR w standardzie Matter

Format intencji

Tego formatu kodu QR można użyć jako identyfikatora URI do rozpoczęcia procesu uruchomienia przez wysyłając Intent z ACTION_VIEW, identyfikator URI określony w data oraz pakiet docelowy ustawiony na Usługi 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
  }
}

Przykładowa aplikacja

Ta przykładowa aplikacja pokazuje, jak uruchomić urządzenie ze standardem Matter, gdy W wizjerze aparatu jest widoczny kod QR zgodny ze standardem Matter.

Pobierz przykładową aplikację do prowizji opartych na intencjach

Kod w tej przykładowej aplikacji korzysta z tych bibliotek Androida:

Poniższe dokumenty ułatwiają zrozumienie kodu przykładowa aplikacja:

Wykorzystanie

Po uruchomieniu aplikacji na ekranie pojawi się podgląd z aparatu. Gdy kod QR w przypadku urządzenia ze standardem Matter, wyświetli się okno Urządzenie ze standardem Matter należy oddać do użytku:

podgląd aparatu 1 podgląd aparatu 2

Jeśli uruchomienie zostanie potwierdzone, pojawi się opcja „Selektor aplikacji”. wspierany przez Wprowadzamy pakiet SDK do urządzeń mobilnych Google Home.

Selektor aplikacji początkowo pokazuje zestaw domyślnych aplikacji uruchamiających (np. aplikację Google Home, jak pokazano na pierwszym zrzucie ekranu). Jeśli ktoś kliknie „Wybierz inną aplikację”, wyświetlą się inne aplikacje, które obsługują proces realizacji zamówienia pakietu SDK Google Home do urządzeń mobilnych (zobacz drugi zrzut ekranu).

Wybierz aplikację – GHA Wybierz aplikację – inne aplikacje

Następnie zostanie uruchomiona wybrana aplikacja do uruchomienia urządzenia.