الأسئلة الشائعة حول النشر
من يدير مهمة نشر المحتوى؟
يدير مطوّر التطبيقات مهمة نشر المحتوى ويرسل الطلبات إلى خدمة Engage. بهذه الطريقة، يتمتع الشركاء المطوّرون بمزيد من التحكّم في وقت نشر المحتوى للمستخدمين وكيفية نشره. يؤدي ذلك إلى تجنُّب تنشيط تطبيق الشريك بشكل متكرر لنشر المحتوى.
هل يحتاج المطوّر إلى نشر جميع أنواع المجموعات؟
على الرغم من أنّ المطوّرين يمكنهم من الناحية الفنية نشر مجموعة واحدة فقط، فإنّنا ننصح بشدة بتضمين المزيد. وإلا، سيفوّت المطوّرون فرصة زيادة التفاعل مع المحتوى الذي يقدّمونه. ننصح بشدة بنشر جميع أنواع المجموعات لكل مجال.
كم مرة يجب على الشريك المطوّر نشر البيانات باستخدام مدير العمل أثناء تشغيل التطبيق؟
ويحدّد الشريك المطوّر ذلك. تنصح Google بنشر المحتوى العام مرة أو مرتين في اليوم، واستخدام منهجية مستندة إلى الأحداث لمحتوى سلة التسوّق وإعادة الطلب والمحتوى الآخر الذي يمكن متابعته (على سبيل المثال، بدء العامل كاستدعاء لإضافة المستخدم عناصر إلى السلة أو إيقاف المستخدم فيلمًا في منتصفه). بالنسبة إلى التطبيقات الاجتماعية، من المهم نشر مجموعات الاقتراحات المحدَّثة بعد كل استخدام للتطبيق. يهتم مستخدمو التطبيقات الاجتماعية أكثر بأحدث الاقتراحات، ويفضلون رؤية المنشور مرة واحدة على الأكثر.
متى يجب أن يستدعي المطوّر واجهات برمجة التطبيقات الخاصة بالحذف؟
يجب عدم طلب واجهات برمجة التطبيقات الخاصة بالحذف إلا في حال عدم توفّر محتوى لنشره. لا تستدعِ واجهات برمجة التطبيقات للحذف والنشر بشكل متتالٍ لاستبدال المحتوى، لأنّ واجهات برمجة التطبيقات للنشر تزيل المحتوى السابق تلقائيًا.
الأسئلة الشائعة حول Broadcast Intent
لماذا يحتاج مطوّرو تطبيقات Android إلى التسجيل لتلقّي أهداف البث؟
لتقديم محتوى جديد للمستخدم، يجب استخدام أهداف البث لتشغيل مزامنة البيانات في الحالات التي قد لا يستخدم فيها المستخدمون التطبيق بشكل متكرر.
يتعذّر اختبار نية البث
لا يتيح تطبيق التحقّق اختبار هدف البث باستخدام الإذن. عليك إزالة الأذونات أثناء الاختبار وإضافتها مرة أخرى قبل تبديل حزمة SDK إلى إصدار الإنتاج في الخطوة 6.
غير مسموح بالتنفيذ في الخلفية
أثناء تسجيل هدف البث، قد يظهر لك الخطأ التالي:
Background execution not allowed: receiving Intent
{ act=com.google.android.engage.action.PUBLISH_RECOMMENDATION .. }
يجب تسجيل أجهزة استقبال البث ديناميكيًا.
class AppEngageBroadcastReceiver extends BroadcastReceiver {
// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
// is received
}
public static void registerBroadcastReceivers(Context context) {
context = context.getApplicationContext();
// Register Recommendation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION,
com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
/*scheduler=*/null));
...
}
الأسئلة الشائعة حول سير العمل
أثناء الدمج مع حزمة تطوير البرامج (SDK)، قد تظهر لك الأخطاء التالية:
أخطاء التحقّق من الصحة على مستوى التطبيق والمجموعة والكيان
تعرض الملخّصات على مستوى التطبيق والمجموعة والكيان عدد أخطاء التحقّق من الصحة. تتوافق هذه الأخطاء مع الحقول المطلوبة غير المتوفّرة أو القيم غير الصالحة المقدَّمة. تظهر رسائل الخطأ باللون الأحمر أسفل كل حقل ذي صلة. يُرجى إصلاح جميع أخطاء التحقّق من الصحة والتأكّد من صحة ملف APK قبل مشاركته.
اختبار الروابط العميقة
ترتبط الروابط العميقة باسم الحزمة. من الطرق الجيدة لاختبار الروابط لصفحات معيّنة استخدام أداة adb.
adb shell am start -W -a android.intent.action.VIEW -d <DEEPLINK URI> <PACKAGE NAME>
كيف يمكنني احتساب تأثير عملية الدمج؟
تُعدّ الروابط العميقة طريقة رائعة لتتبُّع تحديد المصدر. يمكن تضمين عناوين URL للروابط العميقة التي تنقل المستخدمين إلى تطبيقك مع مَعلمات تتبُّع إضافية. على سبيل المثال: "http://xx/deeplink?source_tag=engage".
يمكن للمطوّرين إضافة مَعلمات التتبُّع الخاصة بهم وتقديم معلومات الإحالة لاحتساب التأثير.
الأسئلة الشائعة حول الإصدار 2.0 من Engage for TV
أسئلة عامة
ما هو Engage؟
يوفّر Engage تجربة "المتابعة من حيث توقفت" بمستوى أفضل. إنّها ترقية مهمة تتيح للمشاهدين استئناف مشاهدة المحتوى بسلاسة على مجموعة أوسع من الأجهزة. تخيَّل أن تبدأ مشاهدة فيلم على Google TV ثم تواصل مشاهدته بسهولة على هاتفك أثناء تنقّلك. هذه هي قوة Engage.
تم تصميم هذا النظام الجديد لتعزيز تفاعل المشاهدين والاحتفاظ بهم من خلال توفير تجربة سلسة وخالية من المشاكل في جميع خدمات Google.
هل Video Discovery API هي نفسها Engage؟
نعم، هما نفس الشيء. Engage SDK هي مكتبة تتيح استخدام صف "متابعة المشاهدة". يتيح Engage استخدام أنواع كيانات محتوى أكثر من الفيديو، ولهذا السبب لم يعد الدمج يحمل اسم "اكتشاف الفيديو".
ما هي مزايا استخدام Engage؟
الإجابة: يسهّل Engage على المشاهدين أكثر من أي وقت مضى متابعة المحتوى من حيث توقفوا، بغض النظر عن الجهاز الذي يستخدمونه. إليك طريقة عملها:
- تجربة سلسة على جميع خدمات Google: يمكنك بدء المشاهدة على Google TV ومواصلتها بسلاسة على هاتف Android أو iPhone أو جهاز Android اللوحي. ويمكنك أيضًا استخدامها على الأجهزة التي لم تثبّت التطبيق عليها بعد.
- زيادة معدّل التفاعل والاحتفاظ بالمستخدمين: تساعد ميزة Engage في إعادة جذب المستخدمين إلى تطبيقك، حتى على الأجهزة الجديدة. من خلال السماح للمستخدمين باستئناف مشاهدة برامجهم المفضّلة، يمكنك زيادة فرص مواصلتهم المشاهدة.
- وصول أوسع: لا يقتصر عمل Engage على Google TV، بل يمتد إلى تجارب الوسائط الأخرى على Android، مثل "مجموعات Play" وتطبيقات الوسائط الأخرى من Google.
- التوافق مع الأنظمة القديمة: إذا كنت تستخدم ميزة "اقتراحات أخرى" القديمة، لا مشكلة في ذلك. يتوافق Engage مع الإصدارات القديمة، لذا سيستمر عمل عملية الدمج الحالية.
ملاحظة مهمة: يجب أن تستخدم جميع عمليات الدمج الجديدة لميزة "مواصلة المشاهدة" منصة Engage. سيتم إيقاف نظام "التشغيل التالي على أجهزة متعددة" القديم تدريجيًا.
ما هي مساحات العرض التي تتيح عرض المحتوى المتكامل مع Engage؟
- Google TV
- Android TV (على الجهاز فقط، ولكنّه متوافق مع حزمة Engage SDK)
- تطبيق Google TV المتوافق مع أجهزة Android الجوّالة
- تطبيق Google TV المتوافق مع أجهزة iOS الجوّالة
- مجموعات Play
- مساحة الترفيه من Google
- أجهزة iOS (مع دمج REST API)
هل حزمة Engage SDK مخصّصة لميزة "متابعة المشاهدة"؟
نعم، تتيح حزمة Engage SDK عرض المحتوى في صف "مواصلة المشاهدة". ويجب دمجها مع Engage.
هل ميزة Engage متاحة للجميع؟
يتم طرح Engage على مراحل.
- استخدام المنتج قبل إطلاقه: سنمنح في البداية إمكانية الوصول إلى مجموعة محدّدة من الشركاء من خلال برنامج "استخدام المنتج قبل إطلاقه".
- توسيع نطاق الوصول: نعمل جاهدين على إتاحة Engage لجميع المطوّرين قريبًا.
لضمان إطلاق سلس وناجح، وضعنا إجراءات وقائية لإدارة عملية الطرح. يتضمّن ذلك كلاً من القائمة المسموح بها في Engage وعملية تحقّق منفصلة ضمن حزمة Engage SDK. سواء كنت شريكًا في برنامج الاستخدام المبكر أو تريد الانضمام إليه قريبًا، يُرجى التواصل معنا لنتمكّن من إعداد أذونات الوصول قبل البدء في عملية دمج حزمة Engage SDK.
هل هناك حجم صورة مقترَح يجب تقديمه؟
تم تعديل متطلبات الصور في قسم إنشاء الكيانات.
من خلال مستندات واجهة برمجة التطبيقات الجديدة هذه، هل سيتم سحب بيانات "مواصلة المشاهدة" بواسطة خادم Google من العميل وهل ستظهر على جميع الأجهزة؟
توفّر واجهة برمجة التطبيقات الجديدة تحسينات كبيرة للمحتوى في صف "مواصلة المشاهدة"، بما في ذلك:
تجربة سلسة على جميع أجهزة Google TV: يمكن للمستخدمين بدء المشاهدة على أحد أجهزة Google TV واستئنافها على أي جهاز Google TV آخر تم تسجيل الدخول إليه باستخدام الحساب نفسه. تعمل هذه الميزة أيضًا مع إصدارات Android TV القديمة.
التكامل مع التطبيقات المتوافقة مع الأجهزة الجوّالة: يظهر المحتوى من Engage في تطبيق Google TV المتوافق مع الأجهزة الجوّالة التي تعمل بنظامَي التشغيل Android وiOS، ما يتيح للمستخدمين التبديل بسلاسة بين أجهزة التلفزيون والأجهزة الجوّالة.
تحسين معدّل الحفاظ على المستخدمين: حتى على الأجهزة التي لم يتم تثبيت التطبيق عليها أو التي لم يسجّل المستخدم الدخول إليها، يشجّع المحتوى في صف "مواصلة المشاهدة" المستخدمين على إعادة التفاعل مع تطبيقك، ما يعزّز معدّل الحفاظ على المستخدمين.
التوسّع إلى منصات أخرى: يمتد نطاق Engage إلى منصات وسائط Google الأخرى، مثل Android و"مجموعات Play" والأجهزة اللوحية وتطبيقات ومساحات وسائط Google الأخرى على Android، ما يزيد من تفاعل المستخدمين على جميع الأجهزة.
ما هو الحدّ الأقصى لعدد الكيانات التي يمكنني نشرها في مجموعة "مواصلة التصفّح"؟
يقتصر كل شريك مطوّر على 5 كيانات كحد أقصى في مجموعة "المتابعة". هذا الحدّ مخصّص للتوزيع العادل للمحتوى في صف "مواصلة المشاهدة" على Google TV، وهو مساحة مشتركة لعدة مقدّمي خدمات وسائط.
ماذا يحدث إذا حاولتُ نشر أكثر من 5 كيانات؟
سترفض حزمة Engage SDK طلب النشر إذا تجاوز الحد الأقصى المسموح به وهو 5 عناصر. عليك تقليل عدد الكيانات في طلبك لتتمكّن من النشر بنجاح. يجب تضمين الكيانات التي توقف المستخدمون عن مشاهدتها فقط، لذا في معظم الحالات، لن يكون هناك سوى عدد قليل من هذه الكيانات. عندما يكون هناك أكثر من 5 كيانات من هذا النوع، يمكنك اختيار الكيانات الأحدث لنشرها.
لماذا هناك حدّ أقصى لعدد الكيانات؟
يعرض صف "مواصلة المشاهدة" على Google TV محتوى من مقدّمي خدمات وسائط متعددة. الحد من عدد الكيانات لكل مقدّم خدمة لكي يرى المستخدمون مجموعة متنوعة من المحتوى من جميع مصادرهم المفضّلة، ما يعزّز تجربة مستخدم عادلة ومتوازنة
أسئلة حول تطبيق التحقّق
هل من الضروري اختبار تطبيقي باستخدام تطبيق التحقّق قبل إرساله؟
نعم، من الضروري اختبار تطبيقك باستخدام تطبيق التحقّق قبل إرسال ملف APK.
ندرك أنّك قد تكون واثقًا من عملية الدمج، ولكنّ عملية دمج Engage تتضمّن العديد من المكوّنات المعقّدة. يعمل تطبيق التحقّق كشبكة أمان، حيث يرصد المشاكل المحتملة في وقت مبكر ويوفر لك الوقت والجهد الثمينين على المدى الطويل.
اعتبره فحصًا سريعًا يساعد في ضمان إطلاق سلس وتجربة مستخدم رائعة.
من خلال تحديد أي مشاكل ومعالجتها مسبقًا، يمكنك تجنُّب الإحباط الناتج عن الرفض وإعادة الإرسال.
لإرسال حزمة APK، عليك تضمين لقطة شاشة توضّح أنّ تطبيقك قد اجتاز عملية التحقّق.
ما هي بعض الأخطاء الشائعة التي يجب الانتباه إليها أثناء عملية الدمج؟
تم تصميم تطبيق التحقّق من الصحة لرصد المشاكل المحتملة في عملية دمج Engage. في ما يلي بعض الأخطاء الشائعة التي يقع فيها المطوّرون غالبًا:
لكل أنواع المحتوى (الأفلام والحلقات التلفزيونية وأحداث البث المباشر ومقاطع الفيديو):
- الروابط المفقودة: تأكَّد من تقديم معرّفات موارد منتظمة (روابط) صالحة خاصة بالمنصة لمحتواك. تخبر هذه الروابط النظام بمكان العثور على المحتوى الخاص بك على كل منصة.
- العناوين غير المضمّنة: لا تنسَ تضمين عناوين لكل المحتوى الخاص بك. يساعد ذلك المستخدمين في تحديد ما كانوا يشاهدونه.
- نسب العرض إلى الارتفاع للصور: تأكَّد من أنّ جميع الصور المرتبطة بالمحتوى لها نسبة عرض إلى ارتفاع قريبة من 16:9. يضمن ذلك عرض صورك بشكل صحيح على شاشات مختلفة.
بالنسبة إلى الحلقات التلفزيونية:
- معلومات الحلقة الكاملة: احرص على تضمين عنوان البرنامج ورقم الحلقة ورقم الموسم. يساعد هذا في تنظيم الحلقات ويسمح للمستخدمين بالتنقل داخل السلسلة.
- موضع التشغيل الدقيق: يُرجى التأكّد من أنّ آخر موضع تشغيل أقل من إجمالي مدة الحلقة أو يساويها. يضمن ذلك استئناف المستخدمين من المكان الصحيح.
للأفلام:
- موضع التشغيل الدقيق: على غرار الحلقات التلفزيونية، يجب التأكّد من دقة آخر موضع تشغيل.
بالنسبة إلى فيديوهات البث المباشر:
- معلومات جهة البث: يمكنك تضمين اسم جهة البث في أحداث البث المباشر.
بالنسبة إلى مقاطع الفيديو:
- معلومات صانع المحتوى: حدِّد صانع مقطع الفيديو.
تذكير: سيشير تطبيق التحقّق إلى هذه المشاكل، ما يتيح لك حلّها قبل إرسال تطبيقك، وهذا يوفّر لك الوقت ويضمن تجربة أكثر سلاسة للمستخدمين.
أسئلة حول الحساب والملف الشخصي
يستخدم تطبيقي عمليات تسجيل دخول المستخدمين مجهولي الهوية. هل لا يزال AccountProfile مطلوبًا لـ Engage؟
تم تصميم AccountProfile للتطبيقات التي تستخدم حسابات مستخدمين فردية.
ومع ذلك، نتفهّم أنّ بعض التطبيقات، مثل تطبيقك، قد تعتمد على عمليات تسجيل الدخول المجهولة الهوية.
إليك آلية عمل Engage في هذا السيناريو:
- يُعدّ
AccountProfileمطلوبًا من الناحية الفنية، ولكن لا يزال بإمكانك دمج Engage حتى إذا لم يكن تطبيقك يتضمّن نظام حسابات مستخدمين. - الاستخدام المحدود على الجهاز فقط: تعتمد إمكانات Engage على تحديد المستخدمين على أجهزة مختلفة. وبما أنّ عمليات تسجيل الدخول المجهولة الهوية لا توفّر هذه المعلومات، ستقتصر الميزة على جهاز المستخدم الحالي.
- كيفية الضبط: لإعداد هذه الميزة، عليك إيقاف المزامنة بين الأجهزة. يضمن ذلك ظهور إدخالات المتابعة فقط على الجهاز المحدّد الذي تم بدء تشغيل المحتوى عليه.
باختصار: على الرغم من إمكانية دمج Engage مع عمليات تسجيل الدخول المجهولة، لن يتمكّن المستخدمون من استئناف المحتوى إلا على الجهاز نفسه.
هل يمكنني استخدام AccountProfile مع accountId فقط بدون profileId، حتى إذا كان تطبيقي يتيح استخدام كل من accountId وprofileId؟
يتطلّب AccountProfile كلاً من accountId وprofileId ليعمل بشكل صحيح.
وفي ما يلي السبب في ذلك:
- تحديد الهوية بشكل متّسق: يحدّد
accountIdهوية المستخدم، بينما يميّزprofileIdبين الملفات الشخصية المختلفة ضمن حساب ذلك المستخدم (إذا كان ذلك منطبقًا). يضمن توفير كليهما أن يتتبع Engage المحتوى ويعرضه بدقة لكل ملف شخصي فردي. - منع الأخطاء: إنّ استخدام
accountIdوprofileIdبشكل غير متّسق في طلبات البيانات المختلفة من واجهة برمجة التطبيقات يمكن أن يؤدي إلى سلوك غير متوقّع وأخطاء. على سبيل المثال، إذا أدرجت كليهما عند إضافة محتوى إلى Engage ولكن استخدمتaccountIdفقط عند حذف المحتوى، قد لا يتمكّن النظام من تحديد العناصر المقصودة وإزالتها بشكل صحيح.
هل يجب استخدام profileId في Engage؟
- يجب ملء الحقل
accountId. يحدّد هذا المعرّف هوية المستخدم على جميع الأجهزة. - يُعدّ
profileIdأمرًا بالغ الأهمية لتوفير تجربة مستخدم جيدة. على الرغم من أنّ السمةprofileIdاختيارية من الناحية الفنية، ننصح بشدة باستخدامها إذا كانت خدمتك تتيح استخدام ملفات شخصية متعددة (كما هو الحال في العديد من خدمات البث). لماذا هو مهم للغاية؟ بدونprofileId، قد يعرض صف "مواصلة المشاهدة" محتوى من ملفات شخصية أخرى في الحساب نفسه. قد يؤدي ذلك إلى تجربة مربكة ومحبطة للمستخدمين. - باختصار: يضمن توفير
profileIdأنّ المحتوى المقدَّم في صف "مواصلة المشاهدة" يعكس بدقة سجلّ المشاهدة لكل مستخدم. يجب توفير هذه المعلومات، إلا إذا كان تطبيقك لا يتيح إنشاء ملف شخصي ضمن الحساب.
كيف تستخدم Google profileId من جانبها؟
إذا كانت الخدمة توفّر ملفات شخصية مختلفة لمشاهدة المحتوى، سيتم استخدام accountId وprofileId لربط المحتوى الذي تتم مشاهدته على الجهاز بحساب Google الذي تم تسجيل الدخول إليه على الجهاز. ستسجّل Google بيانات ContinueWatching
مقابل مجموعة accountId وprofileId. أي جهاز Google
تم تسجيل الدخول إليه باستخدام حساب Google نفسه، سيحصل على أحدث البيانات المعدَّلة
من accountId وprofileId المرتبطَين، في صف "مواصلة المشاهدة".
هل يجب ربط الحساب لتنفيذ Engage؟
لا حاجة إلى ربط الحساب. سيتم إلغاء أولوية هذه الواجهة، وستغطي واجهة Device Entitlements API الجديدة جميع حالات الاستخدام ذات الصلة.
أسئلة حول المزامنة على جميع الأجهزة
ماذا تعني عبارة "المزامنة على جميع الأجهزة" عندما يمنح المستخدمون موافقتهم؟
بعد الحصول على موافقة المستخدم على "المزامنة على جميع الأجهزة"، سيتم حفظ المحتوى الذي يشاهده على خوادم Google TV، ما يتيح له متابعة المشاهدة بسلاسة من حيث توقف على أي جهاز تم تسجيل الدخول عليه. بدون موافقة، يظل سجلّ المشاهدة محفوظًا على الجهاز الحالي فقط.
هل يمكننا ضبط "المزامنة على جميع الأجهزة" على "خطأ"؟
يتحكّم الإعداد setUserConsentToSyncAcrossDevices في ما إذا كانت بيانات ContinuationCluster الخاصة بالمستخدم تتم مزامنتها على جميع أجهزته (التلفزيون والهاتف والجهاز اللوحي وما إلى ذلك). إذا تم ضبط هذه العلامة على "خطأ"، سيظهر المحتوى الذي يمكن مواصلة مشاهدته على الجهاز نفسه فقط.
للاستفادة إلى أقصى حد من ميزة المزامنة على جميع الأجهزة، ننصحك بشدة بالحصول على موافقة المستخدم وضبط SyncAcrossDevices على "صحيح".
كيف يتم الحصول على موافقة المستخدم لمشاركة سجلّ المشاهدة على الأجهزة غير التي تعمل بنظام التشغيل Android؟
الأجهزة؟ ما هي نقاط البيانات التي تتم مشاركتها مع خوادم تابعة لجهات خارجية من أجهزة غير Android؟
يتم جمع الموافقة على مستوى المستخدم (مستوى الملف الشخصي أو الحساب). بعد الحصول على الموافقة، يمكن إرسال حمولات "مواصلة المشاهدة" المستندة إلى التفاعل إلى أي مكان حتى تتمكّن Google من عرض حالة استئناف المستخدمين في كل مكان على مستوى جميع الكيانات التي يتفاعلون معها جزئيًا أو تاليًا، على أي جهاز (بدون الحاجة إلى إعادة طلب الموافقة على كل جهاز أو منصة). سيرسل الشركاء إلى المستخدمين آخر حالة لمواصلة المشاهدة (وفقًا للمواصفات) المرتبطة برقم تعريف الملف الشخصي (الذي تم إيداعه على Android).
أسئلة حول REST API
هل تتوفّر مستندات حول REST API؟
من المتوقّع أن يتم إطلاق REST API في مارس 2025، وهذا موثّق في مستندات المطوّرين في Engage.
أسئلة حول الإصدار القديم من خلاصة "اقتراحات أخرى"
هل يحلّ Engage محلّ واجهة برمجة التطبيقات Watch Next API؟
ستكون ميزة Engage متوافقة مع الأنظمة القديمة على جميع أجهزة Android TV التي تتيح استخدام واجهة برمجة التطبيقات Watch Next API. لدمج المحتوى على Google TV ومساحات العرض الأخرى التي تتيح استخدام Engage، على المطوّرين استخدام حزمة Engage SDK.
أسئلة حول الاختبار والدمج
ما الفرق بين LastPlayBackPositionTimeMillis والمدة؟
يجب أن تعكس السمة LastPlayBackPositionTimeMillis مدة التشغيل بالمللي ثانية التي توقف عندها المستخدم عن المشاهدة (على سبيل المثال، 605,000 مللي ثانية لمدة 10 دقائق و5 ثوانٍ). ويجب ألا تكون أكبر من المدة الإجمالية للكيان.
في المقابل، يشير LastEngagementTime إلى الطابع الزمني لآخر تفاعل للمستخدم مع المحتوى.
ما هي إطارات الاختبار التي يجب إجراؤها؟
في ما يلي أُطر الاختبار التي يجريها فريق تأكيد الجودة على Google TV. ويمكن إجراء حالات اختبار مماثلة على مساحات عرض أخرى أيضًا.
- شاهِد فيديو تزيد مدته عن 20 دقيقة لمدة 5 دقائق تقريبًا. اخرج من التطبيق. من المفترض أن تظهر بطاقة الفيديو في صف "مواصلة المشاهدة". ملاحظة: نعرض 5 بطاقات فقط لكل تطبيق خارجي في CW
- يجب أن يؤدي اختيار البطاقة التي ظهرت حديثًا في صف "مواصلة المشاهدة" إلى مواصلة تشغيل الفيديو من النقطة الصحيحة في الفيديو.ملاحظة: يجب أن يستأنف أي محتوى جديد أو قديم التشغيل من حيث توقف آخر مرة
- يجب أن يؤدي تغيير الحسابات على جهاز GTV إلى تغيير البطاقات في صف "مواصلة المشاهدة". من المفترض أن تظهر الفيديوهات من الحساب الحالي فقط. تم ترتيبها حسب الأحدث. سيتم دمج الملف الشخصي لتطبيق تابع لجهة خارجية مع CW. ملاحظة: سيعرض صف "متابعة المشاهدة" في GoogleAccount2 المحتوى التابع لجهات خارجية الذي شاهده GoogleAccount2
- اخرج من التطبيق باستخدام زر الرجوع > تأكَّد من ظهور البطاقة في صف "مواصلة المشاهدة"
- أخفِ الفيديو في صف "مواصلة المشاهدة"، ويجب ألا يظهر مرة أخرى. اختبِر ما إذا كان المحتوى المخفي يظل مخفيًا لأكثر من 24 ساعة وحتى بعد فتح التطبيق بعد 24 ساعة. تأكَّد من أنّ إخفاء عنصر واحد لا يؤدي إلى إخفاء عناصر متعددة.
- توفُّر المحتوى في صف "مواصلة المشاهدة" مع بيانات وصفية كاملة: صورة البطاقة واسم التطبيق والعنوان ورقم الحلقة والموسم للمحتوى التلفزيوني
- يظهر زر "التحقّق من مستوى التقدّم" في شريط التقدّم
- شاهد المستخدم المحتوى حتى أسماء فريق العمل في النهاية، ولا يظهر المحتوى في صف "مواصلة المشاهدة"
- التأكّد من عدم ظهور أي فيديوهات لم تتم مشاهدتها في صف "مواصلة المشاهدة"
- تأكَّد من ترتيب عناصر "متابعة المشاهدة" ترتيبًا زمنيًا استنادًا إلى وقت حدوث نشاط المشاهدة وليس إلى وقت آخر فتح للتطبيق أو آخر يوم.
- تأكَّد من أنّ تفاصيل الحلقة والموسم في بطاقة "متابعة المشاهدة" تتطابق مع ما تمت مشاهدته في المحتوى المكوّن من حلقات
- تأكَّد من أنّ العناصر المكتملة (العناصر التي وصلت إلى شارة النهاية أو تجاوزتها) لا تظهر في صف "مواصلة المشاهدة"
- أوقِف الجهاز في منتصف مشاهدة الحلقة أو الفيلم أو البرنامج. "أوقِف الجهاز في منتصف الحلقة أو الفيلم أو البرنامج. يُرجى التحقّق من أنّه عند تشغيل الجهاز وعلى جهاز تلفزيون آخر، يعرض CW البطاقة الصحيحة في الموضع الصحيح وشريط التقدّم"
- أوقِف الجهاز بعد مشاهدة الحلقة الأولى بالكامل، ثم تحقَّق من ذلك
- تختفي الحلقة الأولى ولا تظهر مجددًا في صف "مواصلة المشاهدة" [على الجهاز الثاني وعند تشغيل الجهاز الاختباري]
- يجب أن تظهر الحلقة 2 (إذا كانت متاحة) في صف "مواصلة المشاهدة" [على الجهاز الثاني وعند تشغيل الجهاز الاختباري]
- السيناريو الأول: التلفزيون 1: حساب Google: الأم، حساب/ملف شخصي تابع لجهة خارجية: الحساب 1 / الملف_الشخصي_1. شاهِد المحتوى وتأكَّد من أنّ بيانات "متابعة المشاهدة" تعرض المحتوى الذي تمت مشاهدته من خلال حساب_1/ملف_شخصي_1 تابع لجهة خارجية
TV2: حساب Google: الأم تحقَّق من بيانات CW من السيناريو الأول. الآن، سجِّل الدخول إلى التطبيق الخارجي باستخدام حساب مختلف. حساب أو ملف شخصي تابع لجهة خارجية: account_2 أو profile_2 شاهِد المحتوى وتأكَّد من أنّ بيانات "مواصلة المشاهدة" تعرض المحتوى الذي تمت مشاهدته من خلال حساب_2/ملف_شخصي_2 تابع لجهة خارجية
GoogleAccount: mom. حالة الجهاز الجديد / لم يتم تثبيت التطبيق التابع لجهة خارجية. On a new device(FDR the device), Verify CW displays data from the last used 3P app that was used by the GoogleAccount. ملاحظة: يجب ألا يعرض صف CW محتوى من جهات خارجية إذا لم يكن حساب GAIA مرتبطًا بعد بملف شخصي تابع لجهة خارجية على جهاز آخر
- GoogleAccount: mom. حالة الجهاز الجديد / تم تثبيت تطبيق خارجي ولكن لم يتم تسجيل الدخول إليه. على جهاز جديد (إعادة ضبط الجهاز على الإعدادات الأصلية)، يعرض تطبيق "التحقّق من CW" البيانات من آخر تطبيق خارجي تم استخدامه من خلال حساب Google.
-
- ملاحظة: يجب ألا يعرض صف "متابعة المشاهدة" محتوى من جهات خارجية إذا لم يكن حساب Google مرتبطًا بعد بملف شخصي تابع لجهة خارجية
لا يظهر محتوى المتابعة في تطبيق Google TV على أجهزة iOS. ما السبب؟
يجب إرسال روابط لصفحات معيّنة على أجهزة iOS ليظهر المحتوى في صف "مواصلة المشاهدة" على أجهزة iOS.
كم مرة يجب تعديل معلومات المحتوى في صف "مواصلة المشاهدة"؟ هل يجب تعديلها بشكل متكرر، مثلاً كل 15 ثانية؟
لا، لا ننصح بإجراء تعديلات متكرّرة. وفي ما يلي السبب في ذلك:
- التأثير في الأداء: يؤدي إرسال التعديلات باستمرار إلى زيادة الضغط على خوادمنا، ما قد يؤدي إلى إبطاء النظام لدى جميع المستخدمين.
- البيانات غير الضرورية: أثناء مشاهدة المستخدم للمحتوى، يتغيّر موضع التشغيل باستمرار. يؤدي إرسال التعديلات كل بضع ثوانٍ إلى إنشاء الكثير من البيانات المكرّرة التي لا تفيد في استئناف التشغيل.
متى يجب تعديل معلومات المحتوى في صف "مواصلة المشاهدة":
ركِّز على تسجيل التغييرات المهمة في مستوى تقدّم المستخدم في المشاهدة. في ما يلي السيناريوهات الرئيسية:
- إيقاف التشغيل مؤقتًا أو نهائيًا: عندما يوقف المستخدم المشاهدة مؤقتًا أو نهائيًا، أرسِل تحديثًا لتخزين موضعه الحالي.
- إغلاق التطبيق أو تشغيله في الخلفية: إذا خرج المستخدم من التطبيق أو انتقل إلى تطبيق آخر أثناء مشاهدة فيديو، يجب إرسال تحديث لحفظ مستوى تقدّمه.
- عندما يزيل المستخدم عنصرًا من صف "مواصلة المشاهدة" داخل التطبيق
كيفية التعديل بكفاءة:
بدلاً من التحديثات المحدّدة بوقت، يمكنك استخدام الأحداث ضمن مشغّل الفيديو أو دورة حياة التطبيق لتفعيل التحديثات. على سبيل المثال:
-
onPauseوonStop: عند إيقاف تشغيل الفيديو مؤقتًا أو نهائيًا -
onAppCloseوonAppBackgrounded: عند إغلاق التطبيق أو نقله إلى الخلفية
من خلال اتّباع هذه الإرشادات، ستضمن استخدام الموارد بكفاءة مع توفير تجربة سلسة في صف "مواصلة المشاهدة" للمستخدمين.