השדה Google Home Sample App for Matter משתמש ב-Google Home Mobile SDK כדי ליצור אפליקציה ל-Android שדומה לאפליקציה Google Home app (GHA). האפליקציה לדוגמה כוללת את התכונות הבאות:
- עמלה של מכשירי Matter פיזיים ווירטואליים למרקם המקומי של Android
- עמלה של מכשירים פיזיים ווירטואליים למארג פיתוח
- שליטה במכשירים במרקם הפיתוח, למשל הפעלת אור
- תכונות של אדמינים מרובים מאפשרות לשתף מכשירים במארג הפיתוח עם אפליקציות אחרות, ולהיפך לכלול מכשירים של בד הפיתוח שמשותפים מאפליקציות אחרות
- תוכניות שירות למפתחים
במדריך הזה מוסבר איך להתקין את חבילת ה-APK של Sample App for Matter ולהשתמש בה כדי לבצע עמלה, לשלוט ולשתף את מכשירי Matter.
כדי להוריד את קוד המקור, ללמוד איך לשלב את Mobile SDK ולהתאים אישית מסכים ב-Android Studio, כדאי לנסות את Sample App for Matter Codelab.
מעבר אל Sample App for Matter Codelab
דרישות מוקדמות
- מכשיר Android O (8.1, רמת API 27) או מכשיר חדש יותר שזמין לבדיקה. כדי לוודא שבמכשיר שלכם יש את התמיכה העדכנית ביותר ב-Matter, כדאי לעיין במדריך אימות המודולים והשירותים של Matter.
- פיתוח מכשיר Matter עם יכולות הפעלה/כיבוי. האפליקציה לדוגמה הזו פועלת עם מכשיר וירטואלי ו-ESP32.
- Matter Virtual Device (MVD). כדי לצמצם את כמות הבעיות בסביבה, מומלץ מאוד להשתמש ב-MVD בתור התחלה. אם תיתקלו בבעיות, יהיה הרבה יותר קל לבדוק אם משתמשים באפליקציה לדוגמה מול MVD.
- יוצרים מכשיר וירטואלי של Matter באמצעות האפליקציה
rootnode_dimmablelight_bCwGYSDpoe
. כשיוצרים שילוב של Matter ב-Google Home Developer Console, משתמשים ב-0xFFF1
כמזהה הספק וב-0x8000
כמזהה המוצר. - יוצרים מכשיר Espressif
עם
all-clusters-app
. כשאתם יוצרים שילוב של Matter בתוך Developer Console, עליכם להשתמש ב-0xFFF1
כמזהה הספק וב-0x8001
כמזהה המוצר.
לא צריך רכזת, למשל Google Nest Hub (2nd gen), כדי להזמין מכשירים ולשלוט בהם באמצעות Sample App for Matter.
התקנה
נכנסים לקטע Releases במאגר Sample App for Matter של GitHub. לגרסה העדכנית ביותר, מאתרים בקטע 'נכסים' את ה-APK בשם
GHSAFM-version-default-debug.apk
. אל תבחרו ב-targetcommissioner
.התקנת גשר ניפוי הבאגים של Android (adb):
מחברים את מכשיר Android להתקן USB, מפעילים את העברת קבצים ומתקינים את ה-APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
מכשירי עמלה
כשתפעילו את האפליקציה לדוגמה בפעם הראשונה, תוצג תיבת דו-שיח עם קישור ל-Sample App for Matter Codelab. אם תבחרו באפשרות לא להציג שוב את ההודעה הזו, תמיד תוכלו להחזיר את תיבת הדו-שיח על ידי עדכון ההעדפות בקטע'אדמין' של האפליקציה.
בשלבים הבאים, נוסיף מכשיר Matter למרקם המקומי של Android, יחד עם מארג פיתוח שמותאם רק לאפליקציה לדוגמה.
מהם בדים בתקן Matter?
בד מסוג Matter הוא דומיין משותף של אמון בין מכשירים ברשת ביתית, ומאפשר להם לתקשר זה עם זה.
למכשירים עשויים להיות בד אחד או יותר שתואמים לפלטפורמה, לאפליקציה או לקבוצה של מכשירים שמקיימים אינטראקציה יחד. לבדים יש מזהה ייחודי, ולמכשירים יש את אותה קבוצה של פרטי כניסה ורשות אישורים (CA). פרטי הכניסה האלה מוקצים במהלך הביצוע של Matter.
כדי להזמין מכשיר Matter, צריך לבצע את השלבים הבאים:
מקישים על הלחצן
Add Device כדי להתחיל את תהליך ההזמנה.בשלב הבא, הבקרה מועברת אל Google Play services, שהופעל משיחה ל-Mobile SDK. כדי להציג הוכחה לבעלות, סורקים את קוד ה-QR או מקישים על שימוש בקוד התאמה.
בסיום הביצוע, מזינים שם המכשיר ומקישים על סיום.
המכשיר מחובר עכשיו גם למרקם של Android המקומי וגם למרקם של הפיתוח.
כל עבודות ההזמנה והמסכים המשויכים מטופלות על ידי Play services בעת הזמנת המכשירים. כך אפשר לספק חוויית משתמש עקבית ולבטל את הצורך לטפל בהרשאות רגישות, כמו פרטי כניסה ל-Wi-Fi ול-Thread.
שליטה במכשירים
מארג הפיתוח יוצר את פרטי הכניסה כדי לשלוט במכשירי Matter ישירות מהאפליקציה לדוגמה.
במסך הבית ניתן להפעיל או להשבית את המכשיר. כדי לגשת לפרטי המכשיר, מקישים עליו.
שיתוף מכשירים
במפרט של Matter, שיתוף מכשיר נקרא תהליך של אדמינים מרובים. אחרי שבוצעה הזמנה של מכשיר לאפליקציה לדוגמה, אפשר לשתף אותו בקלות עם סביבות עסקיות אחרות.
כדי לשתף את מכשיר Matter עם סביבות עסקיות אחרות, צריך להתקין פלטפורמה אחרת במכשיר Android. הפלטפורמה החיצונית הזו הופכת לנציבת היעד. יצרנו מכונה נוספת של האפליקציה לדוגמה, שבה תוכלו להשתמש בתור נציב היעד.
נכנסים לקטע Releases במאגר Sample App for Matter של GitHub. לגרסה העדכנית ביותר, מאתרים בקטע 'נכסים' את ה-APK בשם
GHSAFM-version-targetcommissioner-debug.apk
. אל תבחרו ב-default
.מתקינים את ה-Target Commissioner.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
במסך הבית, מקישים על המכשיר כדי להציג את פרטי המכשיר. מקישים על שיתוף.
האפליקציה לדוגמה מפעילה את Mobile SDK Share API, ושוב, הבקרה מועברת אל Play services.
יופיע גיליון שיתוף שבו תוכלו לבחור את האפליקציה או הפלטפורמה שאליהן אתם רוצים להתאים את המכשיר. המסך הזה מספק שתי דרכים לשתף את המכשיר:
- העברה ידנית באמצעות קוד הגדרה שישותף עם אפליקציית target Commissioner
- באפליקציה מקומית ל-Android שרשומה בתור Matter עמלה
אפליקציית היעד של העמלה מסומנת בתווית GHSAFM-TC. הקישו על המופע הזה של האפליקציה לדוגמה כדי לשתף את המכשיר.
בשלב הבא, האפליקציה החיצונית (ה-Target Commissioner) משלימה את הזמנת המכשיר למארג נפרד.
הגדרות
במסך הבית, לוחצים על סמל ההגדרות
. כאן אפשר לעדכן את העדפות המשתמש, לקבל עזרה ולקבל מידע נוסף על האפליקציה.הודעה על חצי גיליון
במסך ההגדרות יש לך אפשרות להשבית את התראות הגילוי היזומות של הצופים ב-Matter מכשירים.
אם באפליקציה שלכם יש תהליך גילוי או הפעלה משלה ב-Matter, כדאי להסתיר את ההתראות האלה כדי למנוע שיבושים. למידע נוסף, תוכלו לקרוא את המאמר ביטול התראות על גילוי נאות תמורת עמלה.
כלים למפתחים
ממסך ההגדרות אפשר גם לגשת אל כלים למפתחים.
על מנת לבדוק את תוכן המאגרים של Device and User Preferences DataStore ב-Logcat, יש לבצע את הצעדים הבאים:
לוחצים על Log repositories content.
לוחצים על OK בתיבת הדו-שיח ומסמנים את Logcat.
משוב ועזרה
כדי לשלוח לנו משוב או משוב על האופן שבו נוכל לשפר את חוויית הפיתוח של Sample App for Matter, אתם יכולים למלא את טופס המשוב שלנו.
אם נתקלתם בבעיות ב-Sample App for Matter, נסו להשלים את השלבים לאימות הסביבה:
אם יש לכם שאלות לגבי השימוש באפליקציה לדוגמה או אם גיליתם באג בקוד, תוכלו לדווח על בעיות ב'מעקב אחר בעיות' במאגר של GitHub:
לקבלת הדרכה רשמית מ-Google על שאלות טכניות, תוכלו להשתמש בפורום למפתחים של הבית החכם:
על מנת לקבל תמיכה טכנית מהקהילה, צריך להשתמש בתג google-smart-home
ב-Stack Overflow: