نظرة عامة على Data Layer API

يتم التحكّم في العقدة المستندة إلى السحابة الإلكترونية من خلال خادم يملكه Google.
الشكل 1. عيّنة من شبكة العقد التي تتضمّن أجهزة محمولة و أجهزة Wear OS

توفّر واجهة برمجة التطبيقات Wearable Data Layer API، التي تشكّل جزءًا من "خدمات Google Play"، قناة تواصل بين الأجهزة القابلة للارتداء (مثل الساعات الذكية) و الأجهزة المحمولة المتصلة (عادةً الهواتف الذكية). وهي طريقة لمزامنة البيانات ونقلها بين الأجهزة.

ملاحظة: لا تتوفّر واجهة برمجة التطبيقات هذه إلا على ساعات Wear OS و أجهزة Android المقترنة. بالنسبة إلى ساعات Wear OS المقترنة بهواتف iOS، يمكن للتطبيقات الاستعلام عن واجهات برمجة تطبيقات أخرى مستندة إلى السحابة الإلكترونية في حال توفّر اتصال بالإنترنت. لمزيد من المعلومات عن واجهات برمجة التطبيقات الأخرى هذه، يُرجى الانتقال إلى مقالة الوصول إلى الشبكة والمزامنة على Wear OS.

تحذير: بما أنّ واجهات برمجة تطبيقات طبقة البيانات مصمّمة للتواصل بين الأجهزة الجوّالة والأجهزة القابلة للارتداء، فهي واجهات برمجة التطبيقات الوحيدة التي يمكنك استخدامها لإعداد عملية التواصل بين هذين الجهازَين. على سبيل المثال، لا تحاول فتح مقابس من المستوى الأدنى لإنشاء قناة تواصل.

حالات الاستخدام الشائعة

تُعدّ Data Layer API مفيدة بشكل خاص لحالات استخدام اللياقة البدنية والوسائط.

تطبيقات لياقة بدنية

إرسال بيانات التمارين الرياضية من تطبيق Wear OS إلى تطبيق متوافق مع الأجهزة الجوّالة: غالبًا ما تحتاج تطبيقات اللياقة البدنية إلى تسجيل بيانات التمارين الرياضية التي تسجّلها الساعة في تطبيق متوافق مع الأجهزة الجوّالة أو في Health Connect. في حال استخدام Data Layer API لنقل البيانات، استخدِم عميل رسائل لإرسال بيانات التمارين من تطبيق Wear OS إلى التطبيق المتوافق مع الأجهزة الجوّالة من أجل الكتابة إلى Health Connect.

بث البيانات المباشرة إلى الجهاز الجوّال أثناء ممارسة التمارين الرياضية في المنزل

أحد سيناريوهات التمارين الرياضية الشائعة في المنزل هو بث بيانات معدل ضربات القلب من جهاز Wear OS إلى جهاز جوّال وعرض معلومات معدل ضربات القلب المحدّثة على شاشة جهازه الجوّال. لبث هذه البيانات، استخدِم عميل قناة.

تطبيقات الوسائط

للتحكّم في مشغّل وسائط من خلال الإجراء "إيقاف مؤقت/استئناف/بدء/إنهاء" من الساعة إلى الهاتف، استخدِم برنامج رسائل.

خيارات التواصل

يتم نقل البيانات بإحدى الطريقتَين التاليتَين:

  1. مباشرةً، عند إجراء اتصال عبر البلوتوث بين جهاز Wear OS وجهاز آخر
  2. عبر شبكة متاحة، مثل LTE أو Wi-Fi، باستخدام عقدة شبكة على خوادم Google كوسيط

يمكن لجميع عملاء "طبقة البيانات" تبادل البيانات إما باستخدام البلوتوث أو باستخدام السحابة الإلكترونية، وذلك استنادًا إلى عمليات الربط المتاحة للأجهزة. نفترض أنّ البيانات المُرسَلة باستخدام "طبقة البيانات" قد تستخدم في مرحلة ما خوادم مملوكة لشركة Google.

البلوتوث

عند توصيل الأجهزة باستخدام البلوتوث، تستخدم "طبقة البيانات" هذا الاتصال. تتوفّر قناة مشفّرة واحدة بين الجهازَين، باستخدام التشفير العادي للبلوتوث، وتُدار من خلال "خدمات Google Play".

السحابة الإلكترونية

يتم توجيه البيانات تلقائيًا من خلال Google Cloud عندما لا تكون تقنية البلوتوث متاحة. يتم تشفير جميع البيانات التي يتم نقلها من خلال Google Cloud بشكل تام بين الأطراف.

أمان الاتصالات

تفرض "خدمات Google Play" القيود التالية لتوفير مزيد من الأمان في عملية التواصل بين التطبيق المثبَّت على جهاز Wear OS والتطبيق نفسه المثبَّت على جهاز جوّال قريب:

  • يجب أن يتطابق اسم الحزمة على جميع الأجهزة.
  • يجب أن يتطابق توقيع الحزمة على جميع الأجهزة.

ولا يمكن لأي تطبيقات أخرى الوصول إلى البيانات بغض النظر عن نوع الاتصال.

ضبط إعدادات الجهاز

تحتوي واجهة برمجة التطبيقات Wearable Data Layer API على التبعيات التالية:

أدرِج التبعية التالية في ملف build.gradle الخاص بوحدة Wear:

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:19.0.0")
}

تسهيل عملية الإقران الأولية

يوفّر Horologist العديد من المكتبات المساعِدة بالإضافة إلى واجهات برمجة تطبيقات المنصة. ويتضمّن مكتبة طبقة البيانات التي تساعد في إنشاء اتصال بين جهاز جوّال وجهاز Wear OS. بالإضافة إلى ذلك، توفّر واجهات برمجة تطبيقات ملائمة للقيام بما يلي:

  • ثبِّت التطبيق على الجهاز الآخر.
  • افتح التطبيق على الجهاز الآخر.
  • ابدأ نشاطًا معيّنًا على الجهاز الآخر.
  • افتح التطبيق المصاحب.

الوصول إلى طبقة البيانات

لاستدعاء Data Layer API، استخدِم فئة Wearable للحصول على نُسخ من فئات العملاء المختلفة، مثل DataClient وMessageClient.

لمزيد من المعلومات، يُرجى الاطّلاع على نموذج DataLayer.

استخدام برنامج صغير

لإنشاء عميل، اطّلِع على مثال التعليمات البرمجية التالي:

KotlinJava
val dataClient: DataClient = Wearable.getDataClient(context)
DataClient dataClient = Wearable.getDataClient(context);

يمكن أن يكون السياق أي سياق صالح على Android. إذا كنت تستخدم واجهة برمجة التطبيقات ضمن نطاق Activity، استخدِم طريقة getDataClient() لفئة Wearable. يتيح ذلك ظهور تفاعلات معيّنة كحوارات بدلاً من إشعارات، مثل عندما يُطلب من المستخدم تحديث إصداره من خدمات Google Play.

يتم تلقائيًا إجراء عمليات الاستدعاء للمستمعِين في سلسلة واجهة المستخدم الرئيسية للتطبيق. لإجراء callbacks في سلسلة محادثات مختلفة، استخدِم عنصر WearableOptions لتحديد Looper مخصّص:

KotlinJava
runBlocking {
    Wearable.getDataClient(context, options)
}
WearableOptions options = new WearableOptions.Builder().setLooper(myLooper).build();
DataClient dataClient = Wearable.getDataClient(context, options);

لمزيد من المعلومات، اطّلِع على مرجع WearableOptions.Builder.

إعادة إنشاء نُسخ العملاء حسب الحاجة

إنّ إنشاء عملاء واجهات برمجة التطبيقات للأجهزة القابلة للارتداء، مثل DataClient وMessageClient، ليس مكلفًا. لذا، بدلاً من الاحتفاظ بالعملاء، يمكنك إعادة إنشائهم كما تريد باستخدام النمط الذي يناسب تطبيقك.

تتم مشاركة حالة العميل، مثل مجموعة المستمعِين المسجَّلين، على جميع العملاء ويتم الاحتفاظ بها في حال تحديث "خدمات Google Play" أثناء تشغيل أحد التطبيقات.