ערכת ה-SDK של Matter מספקת ממשק API שמבוסס על Task
כדי להתחיל את ההפעלה של Matter עם פרמטרים שונים, לבחון את התוצאה ולהוסיף פרטי כניסה (אופציונלי). עם זאת, יש מצבים שבהם נדרשת נקודת כניסה של קוד QR בלבד. לדוגמה, מאפליקציית מצלמה כללית שרוצים לספק בה קיצור דרך להפעלת ההזמנה כשמוצג קוד QR בעינית.
לפני שממשיכים, חשוב לוודא שכל הדרישות המוקדמות מתקיימות.
קודי QR של Matter
קודי QR של Matter הם בפורמט הכללי MT:Y3.13OTB00KA0648G00
, שבו הקידומת MT:
היא קבועה והסיומת היא מחרוזת מקודדת בבסיס 38 באמצעות האלפבית [A-Z0-9.-]
. הסיומת תמיד חייבת להיות באורך של 19 תווים לפחות, אבל היא יכולה להיות גם ארוכה יותר.
אפשר לקבוע אם קוד QR מייצג קוד QR בתקן Matter באמצעות ביטוי רגולרי (regex) הבא ב-Java:
fun isMatterQrCode(value: String): Boolean { return value.matches(Regex("""MT:[A-Z0-9.-]{19,}""")) }
לדוגמה, קוד ה-QR הבא מייצג את MT:Y3.13OTB00KA0648G00
:
פורמט הכוונה
אפשר להשתמש בפורמט קוד ה-QR הזה כ-URI כדי להתחיל את תהליך ההפעלה. לשם כך, שולחים Intent
עם ACTION_VIEW
, ה-URI שצוין ב-data
וחבילת היעד שמוגדרת ל-Google Play Services:
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 כשמוצג קוד QR תואם ל-Matter בעין המצלמה.
הורדת האפליקציה לדוגמה של אימות מבוסס-כוונה
הקוד באפליקציה לדוגמה הזו משתמש בספריות Android הבאות:
המסמכים הבאים יכולים לעזור לכם להבין את הקוד שנכתב לאפליקציית הדוגמה הזו:
שימוש
כשהאפליקציה מופעלת, התצוגה המקדימה של המצלמה מוצגת במסך. כשמזוהה קוד QR של מכשיר Matter, מוצגת תיבת דו-שיח כדי לאשר את ביצוע ההזמנה של מכשיר ה-Matter:
אם ההפעלה תאושר, יופעל 'בורר האפליקציות' שנתמך על ידי Google Home Mobile SDK.
בבורר האפליקציות מוצגת בהתחלה קבוצה של אפליקציות ברירת מחדל להפעלה (לדוגמה, אפליקציית Google Home כפי שמוצג בצילום המסך הראשון). אם מקישים על 'בחירת אפליקציה אחרת', מוצגות אפליקציות אחרות שתומכות בתהליך ההפעלה של Google Home Mobile SDK (ראו את צילום המסך השני).
לאחר מכן, האפליקציה שנבחרה מופעלת כדי לבצע את ההפעלה הראשונית של המכשיר.