يستخدم 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"، يمكنك تجربة الدرس التطبيقي حول الترميز Sample App for Matter.
الانتقال إلى الدرس التطبيقي حول الترميز Sample App for Matter
المتطلبات الأساسية
- جهاز Android O (8.1، مستوى واجهة برمجة التطبيقات 27) أو جهاز أحدث متاح للاختبار. للتأكّد من توافق جهازك مع أحدث إصدار من Matter، يمكنك الاطّلاع على دليل التحقّق من وحدات وخدمات Matter.
- يمكنك إنشاء جهاز يعمل بنظام التشغيل Matter باستخدام إمكانات التفعيل/الإيقاف. يعمل
نموذج التطبيق هذا مع جهاز افتراضي ومنصة ESP32.
- إنشاء Matter جهاز افتراضي باستخدام تطبيق
rootnode_dimmablelight_bCwGYSDpoe
. عند إنشاء عملية دمج Matter في Google Home Developer Console، يُرجى استخدام0xFFF1
كمعرّف المورّد و0x8000
باعتباره معرّف المنتج. - إنشاء جهاز Espressif
باستخدام
all-clusters-app
عند إنشاء عملية تكامل Matter في Developer Console، استخدِم0xFFF1
كمعرّف المورّد و0x8001
كمعرّف للمنتج.
- إنشاء Matter جهاز افتراضي باستخدام تطبيق
لن تحتاج إلى وحدة تحكّم، على سبيل المثال Google Nest Hub (2nd gen)، لتفويض الأجهزة والتحكّم فيها من خلال Sample App for Matter.
تثبيت
انتقِل إلى قسم الإصدارات في مستودع Sample App for Matter على GitHub. حدِّد مكان حزمة APK باسم
GHSAFM-1.4.1-default-debug.apk
. ولا تختَرtargetcommissioner
:تثبيت تطبيق Android Debug Bridge (adb):
اربط جهازك الذي يعمل بنظام التشغيل Android بمنفذ USB وفعِّل File Transfer، ثم ثبِّت حزمة APK:
$ adb unroot && adb install GHSAFM-1.4.1-default-debug.apk
أجهزة العمولات
عند تشغيل نموذج التطبيق للمرة الأولى، سيظهر مربّع حوار يتضمن رابطًا يؤدي إلى الدرس التطبيقي حول الترميز Sample App for Matter. إذا اخترت عدم عرض هذه الرسالة مرة أخرى، يمكنك استعادة مربع الحوار في أي وقت عن طريق تعديل إعداداتك المفضَّلة في قسم "المشرف" في التطبيق.
في الخطوات التالية، ستتم إضافة جهاز Matter إلى قماش Android المحلي، بالإضافة إلى قماش التطوير المحلي إلى نموذج التطبيق فقط.
ما هي أقمشة Matter؟
القماش Matter هو نطاق ثقة مشترك بين الأجهزة في الشبكة المنزلية ما يتيح له التواصل مع بعضها.
قد تحتوي الأجهزة على قماش واحد أو أكثر يتوافق مع منصة أو تطبيق أو مجموعة من الأجهزة معًا. تحتوي الأقمشة على معرّف فريد، وتتشارك الأجهزة مجموعة بيانات الاعتماد وشهادة الشهادة (CA) نفسها. يتم منح بيانات الاعتماد هذه أثناء عمولة Matter.
لمنح جهاز Matter، يجب تنفيذ الخطوات التالية:
انقر على الزر
إضافة جهاز لبدء عملية التفويض.بعد ذلك، يتم نقل عنصر التحكم إلى Google Play services الذي يتم تشغيله من مكالمة إلى Mobile SDK. لإثبات إثبات الاستحواذ، عليك مسح رمز الاستجابة السريعة ضوئيًا أو النقر على استخدام رمز الإقران.
عند اكتمال المهمة، أدخِل اسم الجهاز ثم انقر على تم.
جهازك متصل الآن بكل من قماش Android المحلي وقماش التطوير.
يتم التعامل مع كل مهام التشغيل والشاشات المرتبطة بواسطة Play services عند تشغيل الأجهزة. يوفّر ذلك تجربة متسقة للمستخدم ويلغي الحاجة إلى التعامل مع الأذونات الحسّاسة، مثل بيانات اعتماد شبكة Wi-Fi وسلسلة المحادثات.
التحكّم في الأجهزة
تنشئ قماش التطوير بيانات الاعتماد للتحكم في أجهزة Matter مباشرةً من نموذج التطبيق.
من الشاشة الرئيسية، يمكنك تبديل جهازك للتفعيل أو الإيقاف. يُرجى النقر على الجهاز للوصول إلى تفاصيل الجهاز.
مشاركة الأجهزة
يُشار إلى مشاركة جهاز باسم تدفق مشرفين متعددين في مواصفات Matter. بعد إنشاء نموذج للتطبيق، يمكنك مشاركته بسهولة مع الأنظمة المتكاملة الأخرى.
لمشاركة جهاز Matter مع أنظمة بيئية أخرى، يجب تثبيت نظام أساسي آخر على جهاز Android. وتصبح هذه المنصّة الخارجية المفوَّض المستهدَف. لقد أنشأنا مثيلًا آخر لنموذج التطبيق الذي يمكنك استخدامه كمفوّض مستهدف.
انتقِل إلى قسم الإصدارات في مستودع Sample App for Matter على GitHub. حدِّد أحدث حزمة APK باسم
GHSAFM-[version]-targetcommissioner
، على سبيل المثالGHSAFM-1.4.1-targetcommissioner-debug.apk
:تثبيت المفوّض المستهدف.
$ adb unroot && adb install GHSAFM-1.4.1-targetcommissioner-debug.apk
من الشاشة الرئيسية، انقر على الجهاز لعرض معلومات الجهاز. انقر على مشاركة.
يستدعي التطبيق نموذج واجهة برمجة تطبيقات المشاركة Mobile SDK ويتم نقل عنصر التحكم إلى Play services مرة أخرى.
تعرض ورقة المشاركة ما يتيح لك اختيار التطبيق أو النظام الأساسي الذي تريد إقران الجهاز به. توفر لك هذه الشاشة طريقتين لمشاركة الجهاز:
- يدويًا من خلال رمز إعداد لمشاركته مع تطبيق المفوَّض المستهدف
- باستخدام تطبيق Android محلي مسجل كمفوّض على Matter
ويتم تصنيف تطبيق المفوَّض المستهدف باسم GHSAFM-TC. انقر على هذه النسخة من نموذج التطبيق لمشاركة جهازك.
بعد ذلك، يُكمل التطبيق الخارجي (المُفوَّض المستهدف) تنفيذ الجهاز بقطعته الخاصة.
الإعدادات
من الشاشة الرئيسية، انقر على رمز الإعدادات
. إليك خيارات تعديل الإعدادات المفضّلة للمستخدم والحصول على المساعدة ومعرفة المزيد من المعلومات عن التطبيق.إشعار نصف الشاشة
من شاشة "الإعدادات"، يمكنك إيقاف إشعارات الاكتشاف الاستباقية القابلة للتفويض على أجهزة Matter.
إذا كان تطبيقك يوفّر مسارًا استكشافيًا أو استكشافيًا لنظام Matter، يمكنك إيقاف هذه الإشعارات لمنع المقاطعات. لمزيد من المعلومات، يمكنك الاطّلاع على إيقاف إشعارات الاكتشاف القابلة للاكتشاف.
برامج الخدمات لمطوّري البرامج
من شاشة "الإعدادات"، يمكنك أيضًا الوصول إلى برامج مساعدة مطوّري البرامج.
لمراجعة محتوى مستودع Data الجهاز ومستودعات المستخدم المفضّلة في Logcat، أكمِل الخطوات التالية:
انقر على تسجيل محتوى المستودعات.
انقر على حسنًا إلى مربع الحوار، ثم ضع علامة في المربّع Logcat.
التعليقات والمساعدة
يُرجى ملء نموذج الملاحظات لإرسال أفكارك أو ملاحظاتك بشأن كيفية تحسين تجربة التطوير مع Sample App for Matter.
إذا كنت تواجه مشاكل في Sample App for Matter، حاوِل إكمال خطوات إثبات بيئتك:
إذا كانت لديك أسئلة حول استخدام نموذج التطبيق أو اكتشاف خطأ في الرمز، يمكنك إرسال المشاكل إلى أداة تتبّع المشاكل في مستودع GitHub:
للحصول على إرشادات رسمية من Google بشأن الأسئلة الفنية، يُرجى استخدام منتدى مطوّري المنزل الذكي:
للحصول على الدعم الفني من المنتدى، استخدِم العلامة google-smart-home
على Stack Overflow: