雖然 Matter SDK 提供以 Task
為基礎的 API,用於啟動 Matter 佣金
測試結果,並選擇是否要
憑證,在某些情況下只能由 QR code 進入
。例如以一般相機應用程式為例
提供快速啟動功能,當 QR code 在
觀景窗。
繼續操作前,請確認所有 符合必要條件。
Matter QR code
Matter QR code 的格式為
MT:Y3.13OTB00KA0648G00
,其中 MT:
前置字串為常數,且後置字串
是使用字母 [A-Z0-9.-]
的 Base 38 編碼字串。後置字串必須
一律至少為 19 個字元,但也可能較長。
使用 以下是 Java 中的規則運算式
fun isMatterQrCode(value: String): Boolean { return value.matches(Regex("""MT:[A-Z0-9.-]{19,}""")) }
舉例來說,下列 QR code 代表 MT:Y3.13OTB00KA0648G00
:
意圖格式
這個 QR code 格式可做為 URI 使用,以便啟動調用流程。
透過 ACTION_VIEW
、data
中指定的 URI、Intent
和
目標套件設為 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
}
}
範例應用程式
這個範例應用程式說明如何在發生以下情況時啟動 Matter 裝置: 相機的觀景窗會顯示符合 Matter 標準的 QR code。
這個範例應用程式中的程式碼使用下列 Android 程式庫:
下列文件也有助於瞭解為此撰寫的程式碼 範例應用程式:
用量
應用程式啟動後,螢幕上會顯示相機預覽畫面。掃描 QR code 時 如果偵測到 Matter 裝置,系統會顯示對話方塊,確認 應該對該 Matter 裝置執行調試作業:
如果確認允許調試,「應用程式挑選器」 已推出 Google Home Mobile SDK。
應用程式挑選器一開始會顯示一組預設的調用應用程式 (例如第一張螢幕截圖所示的 Google Home 應用程式)。輕觸「選擇其他應用程式」時,系統會顯示其他支援 Google Home Mobile SDK 調控流程的應用程式 (請見第二張螢幕截圖)。
接著,系統會啟動所選的應用程式,對裝置執行調校作業。