تتيح Ambient API لتطبيقك ربط الأجهزة المزوّدة بميزة "العرض على الشاشة" بحساب "صور Google" الخاص بالمستخدم وعرض صوره التي اختارها.
مسار Ambient API
في ما يلي تفاصيل عن آلية عمل Ambient API لربط جهاز ثم استرداد عناصر الوسائط وعرضها:
البحث عن جهاز حالي (إجراء يُنصح به): قبل إنشاء جهاز جديد، ننصح بالتحقّق ممّا إذا كان هناك جهاز للمستخدم الحالي. يجب أن يحافظ تطبيقك على تعيين بين المستخدم الداخلي و
deviceIdالذي تقدّمه Google لأي أجهزة ينشئها من خلال تطبيقك. إذا تم العثور علىdeviceIdللمستخدم، يمكنك المتابعة لإعادة تحميل الرمز المميّز المخصص له (إذا لزم الأمر).بدء عملية تفويض OAuth 2.0 (وإنشاء جهاز اختياريًا): ابدأ مسار OAuth 2.0 للتلفزيون وأجهزة الإدخال ذات الوظائف المحدودة بطلب رمز التفويض.
إنشاء جهاز جديد: ينشئ تطبيقك جهازًا في حساب أحد المستخدمين على "صور Google" من خلال استدعاء
CreateDeviceوتقديم معرّف UUID صالح من الإصدار 4.بعد إنشاء الجهاز بنجاح، ستُرجع واجهة برمجة التطبيقات
AmbientDeviceعنصرًا يحتوي علىdeviceIdتم تعيينه من قِبل Google. من الضروري أن يخزن تطبيقك هذاdeviceIdويربطه بالمستخدمين.عرض
settingsUri: يتضمّن كائنAmbientDevicesettingsUri. قدِّم هذا المعرّف المميّز للمستخدم، عادةً في شكل رمز استجابة سريعة يمكنه مسحه ضوئيًا باستخدام جهازه الجوّال. يوجّه عنوان URL هذا المستخدم إلى تطبيق "صور Google" حيث يمكنه ضبط مصادر الوسائط (مثل الألبومات) التي يريد عرضها على جهازه المخصّص للعرض.الاستعلام عن
mediaSourcesSet: يجب أن يستدعي تطبيقك بشكل دوريGetDevice، مع تقديمdeviceId، للتحقّق من حالة الجهاز المحيطي. راقِب حقلmediaSourcesSetفي استجابةAmbientDevice. ستكون القيمة false في البداية.بعد أن يختار المستخدم مصادر الوسائط بنجاح في تطبيق "صور Google"، سيتم تغيير هذا الحقل إلى true.
يتضمّن استجابة
AmbientDevicepollingConfigمعpollIntervalيجب استخدامه كدليل لتحديد كثافة قياس الأداء.استرداد عناصر الوسائط: عندما يعرض
mediaSourcesSetالقيمة true، يمكن لتطبيقك بدء جلب عناصر الوسائط التي اختارها المستخدم.استخدِم طريقة
ListMediaItemsمع تقديمdeviceId. ستعرِض واجهة برمجة التطبيقاتListMediaItemsResponseيحتوي على قائمة بAmbientMediaItemكائنات. يتضمّن كلAmbientMediaItemتفاصيل مثلidوcreateTimeوMediaFileمع بيانات وصفية إضافية. يحتوي العنصرMediaFileعلى عنصرbaseUrlيمكنك استخدامه لجلب البايتات الفعلية لعنصر وسائط. راجِع دليل إدراج عناصر الوسائط واستردادها للاطّلاع على تفاصيل حول مَعلماتbaseUrlالإضافية.عرض عناصر الوسائط: استخدِم
baseUrlمنMediaFileلتنزيل محتوى الوسائط و عرضه على الجهاز المخصّص للعرض السينمائي.
اعتبارات مهمة
الحد الأقصى لعدد الأجهزة وإدارتها:
- حدود الأجهزة: يُرجى العِلم أنّ الحد الأقصى المسموح به هو 100 جهاز لكل مستخدم في تطبيقك.
- نشاط الجهاز والرموز المميّزة: ستحتاج إلى إدارة دورة حياة الأجهزة ورموز التفويض الخاصة بالمستخدمين. ننصحك بالتفكير في المدة التي تظل فيها الأجهزة نشطة و كيفية معالجة عمليات إعادة تحميل الرموز المميّزة أو إعادة التفويض إذا أصبح الجهاز غير نشط أو انتهت صلاحية الرمز المميّز.
يتضمّن دليل إنشاء الأجهزة وإدارتها تفاصيل إضافية.
العمل مع عناصر الوسائط:
- استخدام عنصر الوسائط: فهم كيفية جلب محتوى
baseUrlومعالجته بشكل صحيح باستخدامbaseUrl، بما في ذلك أي مَعلمات أو مصادقة ضرورية - معالجة الأخطاء: يجب تنفيذ معالجة فعّالة للأخطاء في طلبات البيانات من واجهة برمجة التطبيقات، بما في ذلك
السيناريوهات مثل
NOT_FOUNDللأجهزة، وFAILED_PRECONDITIONفي حال عدم ضبط مصادر الوسائط، وRESOURCE_EXHAUSTEDفي حال بلوغ الحدود القصوى المسموح بها للأجهزة.
يتضمّن دليل إدراج عناصر الوسائط واستردادها تفاصيل إضافية.
الخطوات التالية
- ضبط إعدادات تطبيقك: تأكَّد من توفُّر بيانات الاعتماد اللازمة ومن ضبط إعدادات تطبيقك لاستخدام بروتوكول OAuth 2.0 للتلفزيون وأجهزة الإدخال المحدود.
- مراجعة المستندات المرجعية لواجهة برمجة التطبيقات Ambient API: يمكنك الاطّلاع على المستندات المرجعية المفصّلة لجميع ال methods المتاحة ومَعلمات الطلب والاستجابة ورمز الخطأ.