
يستخدم Google Home Sample App for Matter Google Home Mobile SDK لإنشاء تطبيق Android مشابه لـ Google Home app (GHA). يوفر نموذج التطبيق هذا الميزات التالية:
- تفعيل الأجهزة المادية والافتراضية Matter في Local Android fabric
- تفعيل الأجهزة المادية والافتراضية في development fabric
- التحكّم في الأجهزة على development fabric، مثلاً تشغيل ضوء
- تتيح لك ميزات المشرفين المتعدّدين مشاركة الأجهزة على development fabric مع تطبيقات أخرى، والعكس صحيح، أي يمكنك تضمين الأجهزة التي تمت مشاركتها من تطبيقات أخرى في development fabric
- أدوات المطوّرين
يصف هذا الدليل كيفية تثبيت ملف 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 يتضمّن إمكانات On/Off يعمل نموذج التطبيق هذا مع جهاز افتراضي وجهاز ESP32.
- جهاز Matter الافتراضي (MVD). للحدّ من مشاكل البيئة، ننصحك بشدة باستخدام MVD في البداية. إذا واجهتك أي مشاكل، سيكون من الأسهل بكثير التحقيق فيها إذا تم استخدام نموذج التطبيق مع MVD.
- إنشاء جهاز Matter افتراضي
باستخدام تطبيق
rootnode_dimmablelight_bCwGYSDpoeعند إنشاء عملية دمج Matter في Google Home Developer Console، استخدِم0xFFF1كمعرّف المورّد و0x8000كمعرّف المنتج. - إنشاء جهاز Espressif
باستخدام
all-clusters-app. عند إنشاء عملية دمج في Developer Console، استخدِم0xFFF1كمعرّف المورّد و0x8001كمعرّف المنتج.Matter
لست بحاجة إلى مركز تحكّم، مثل Google Nest Hub (2nd gen)، لتفعيل الأجهزة والتحكّم فيها باستخدام Sample App for Matter.
تثبيت
انتقِل إلى قسم Releases في مستودع GitHub .Sample App for Matter لأحدث إصدار، ابحث في قسم Assets عن ملف APK باسم
GHSAFM-version-default-debug.apk. لا تختَرtargetcommissioner.ثبِّت Android Debug Bridge (adb):
وصِّل جهاز Android باستخدام USB وفعِّل نقل الملفات، ثم ثبِّت ملف APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
تفعيل الأجهزة
عند تشغيل نموذج التطبيق لأول مرة، سيظهر لك مربّع حوار يتضمّن رابطًا يؤدي إلى الدرس التطبيقي حول Sample App for Matter. إذا اخترت عدم عرض هذه الرسالة مرة أخرى، يمكنك إعادة ظهور مربّع الحوار في أي وقت من خلال تعديل إعداداتك المفضّلة في قسم المشرف في التطبيق.
في الخطوات التالية، ستضيف جهاز Matter إلى Local Android fabric، بالإضافة إلى development fabric محلية للتطبيق التجريبي فقط.
ما هي Matter fabrics؟

Matter Matter fabric هي نطاق ثقة مشترك بين الأجهزة في شبكة منزلية، ما يتيح لها التواصل مع بعضها البعض.
قد تتضمّن الأجهزة واحدًا أو أكثر من fabrics التي تتوافق مع منصة أو تطبيق أو مجموعة من الأجهزة التي تتفاعل معًا. تتضمّن fabrics رقم تعريف فريدًا، وتشارك الأجهزة مجموعة بيانات الاعتماد نفسها وجهة إصدار الشهادات (CA). يتم تعيين بيانات الاعتماد هذه أثناء Matter التفعيل.
لتفعيل جهاز Matter، أكمل الخطوات التالية:
انقر على الزر إضافة جهاز لبدء عملية التفعيل.

بعد ذلك، يتم نقل التحكّم إلى Google Play services، التي يتم تشغيلها من خلال طلب إلى Mobile SDK. لإثبات ملكية الجهاز، امسح رمز الاستجابة السريعة ضوئيًا أو انقر على استخدام رمز الإقران.

عند اكتمال عملية التفعيل، أدخِل اسم الجهاز، ثم انقر على تم.
جهازك متصل الآن بكل من Local Android fabric وdevelopment fabric.
تتولّى Play services جميع أعمال التفعيل والشاشات المرتبطة بها عند تفعيل الأجهزة. يوفّر ذلك تجربة متّسقة للمستخدم ويزيل الحاجة إلى التعامل مع الأذونات الحسّاسة، مثل بيانات اعتماد Wi-Fi وThread.
التحكُّم في الأجهزة
تنشئ development fabric بيانات الاعتماد للتحكّم في Matter الأجهزة مباشرةً من نموذج التطبيق.
من الشاشة الرئيسية، يمكنك تشغيل جهازك أو إيقافه. انقر على الجهاز للوصول إلى تفاصيله.

مشاركة الأجهزة
يُشار إلى مشاركة جهاز باسم تدفق المشرفين المتعدّدين في الـ Matter مواصفات. بعد تفعيل جهاز في نموذج تطبيق، يمكنك مشاركته بسهولة مع أنظمة أخرى.
لمشاركة جهاز Matter مع أنظمة أخرى، عليك تثبيت منصة أخرى على جهاز Android. تصبح هذه المنصة الخارجية المشرف المستهدَف. لقد أنشأنا مثيلاً آخر لنموذج التطبيق يمكنك استخدامه كمشرف مستهدَف.
انتقِل إلى قسم Releases في مستودع GitHub .Sample App for Matter لأحدث إصدار، ابحث في قسم Assets عن ملف APK باسم
GHSAFM-version-targetcommissioner-debug.apk. لا تختَرdefault.ثبِّت المشرف المستهدَف.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apkمن الشاشة الرئيسية، انقر على الجهاز لعرض معلوماته. انقر على مشاركة.

يطلب التطبيق التجريبي واجهة برمجة التطبيقات Mobile SDK Share API، ويتم نقل التحكّم مرة أخرى إلى Play services.
تظهر ورقة مشاركة تتيح لك اختيار التطبيق أو المنصة التي تريد إقران الجهاز بها. توفّر هذه الشاشة طريقتَين لمشاركة الجهاز:
- يدويًا من خلال رمز إعداد تتم مشاركته مع تطبيق المشرف المستهدَف
- باستخدام تطبيق Android محلي تم تسجيله كمشرف Matter
يُطلق على تطبيق المشرف المستهدَف اسم GHSAFM-TC. انقر على هذا المثيل من نموذج التطبيق لمشاركة جهازك.
بعد ذلك، يُكمل التطبيق الخارجي (المشرف المستهدَف) عملية تفعيل الجهاز في fabric الخاص به.
الإعدادات
من الشاشة الرئيسية، انقر على رمز الإعدادات settings . هنا يمكنك تعديل الإعدادات المفضّلة للمستخدم والحصول على مساعدة والاطّلاع على مزيد من المعلومات حول التطبيق.

إشعار نصف الشاشة
من شاشة "الإعدادات"، يمكنك اختيار إيقاف الإشعارات الاستباقية عن الأجهزة التي يمكن تفعيلها في Matter.
إذا كان تطبيقك يوفّر عملية Matter اكتشاف أو تفعيل خاصة به، قد ترغب في إيقاف هذه الإشعارات لمنع حدوث انقطاعات. راجِع مقالة إيقاف الإشعارات عن الأجهزة التي يمكن تفعيلها لمزيد من المعلومات.
أدوات المطوّرين
من شاشة "الإعدادات"، يمكنك أيضًا الوصول إلى أدوات المطوّرين.
لمراجعة محتويات مستودعَي Device وUser Preferences DataStore في Logcat، أكمل الخطوات التالية:
انقر على تسجيل محتوى المستودعات.
انقر على حسنًا في مربّع الحوار، ثم اطّلِع على Logcat.
التعليقات والمساعدة
لإرسال أفكارك أو ملاحظاتك حول كيفية تحسين تجربة التطوير باستخدام Sample App for Matter، أكمل نموذج الملاحظات.
إذا كنت تواجه مشاكل في Sample App for Matter، حاوِل إكمال الخطوات للتحقّق من بيئتك:
إذا كانت لديك أسئلة حول استخدام نموذج التطبيق أو اكتشفت خطأ في الرمز، يمكنك إرسال المشاكل إلى Issue Tracker في مستودع GitHub:
للحصول على إرشادات رسمية من Google بشأن الأسئلة الفنية، استخدِم منتدى مطوّري المنزل الذكي:
للحصول على الدعم الفني من المنتدى، استخدِم العلامة google-smart-home على Stack Overflow: