Komisi Berbasis Niat untuk Masalah

Meskipun Matter SDK menyediakan API berbasis Task untuk memulai pemanggilan Matter dengan berbagai parameter, mengamati hasilnya, dan secara opsional menambahkan kredensial, ada situasi di mana titik entri hanya kode QR diperlukan. Misalnya, dari aplikasi kamera umum yang ingin menyediakan pintasan untuk memulai komisi saat kode QR terlihat di jendela bidik.

Sebelum melanjutkan, pastikan semua Prasyarat telah terpenuhi.

Kode QR Matter

Kode QR Matter menggunakan bentuk umum MT:Y3.13OTB00KA0648G00, dengan awalan MT: berupa konstanta, dan akhiran adalah string berenkode 38 dasar menggunakan alfabet [A-Z0-9.-]. Akhiran harus selalu minimal 19 karakter, tetapi bisa juga lebih panjang.

Menentukan apakah kode QR mewakili kode QR Matter dapat dilakukan dengan regex berikut di Java:

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

Misalnya, kode QR berikut mewakili MT:Y3.13OTB00KA0648G00:

Contoh kode QR Matter

Format Intent

Format kode QR ini dapat digunakan sebagai URI untuk memulai alur komisi dengan mengirim Intent dengan ACTION_VIEW, URI yang ditentukan dalam data, dan paket target yang ditetapkan ke Layanan 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
  }
}

Aplikasi contoh

Aplikasi contoh ini menunjukkan cara mulai menggunakan perangkat Matter saat kode QR yang sesuai dengan Matter terlihat di jendela bidik kamera.

Download aplikasi contoh Commissioning berbasis Intent

Kode dalam aplikasi contoh ini memanfaatkan library Android berikut:

Dokumen berikut juga berguna untuk memahami kode yang ditulis untuk aplikasi contoh ini:

Penggunaan

Saat aplikasi dimulai, pratinjau kamera akan ditampilkan di layar. Saat kode QR untuk perangkat Matter terdeteksi, dialog akan ditampilkan untuk mengonfirmasi apakah komisi untuk perangkat Matter tersebut harus dilakukan:

pratinjau kamera 1 pratinjau kamera 2

Jika Commissioning dikonfirmasi, "App Picker" yang didukung oleh Google Home Mobile SDK akan diluncurkan.

Pemilih Aplikasi awalnya menunjukkan kumpulan aplikasi komisi default (misalnya, aplikasi Google Home seperti yang ditampilkan di screenshot pertama). Jika pengguna mengetuk "Pilih aplikasi lain", aplikasi lain yang mendukung alur komisi Google Mobile Mobile SDK akan ditampilkan (lihat screenshot kedua).

Memilih aplikasi - GHA Pilih aplikasi - Aplikasi lain

Aplikasi yang dipilih kemudian diluncurkan untuk menjalankan komisi perangkat.