تعمل Google على إنشاء شاشة على الجهاز تنظّم تطبيقات المستخدمين حسب المجالات، وتوفّر تجربة غامرة جديدة لاستهلاك محتوى التطبيقات المخصّص واستكشافه. توفّر هذه التجربة الكاملة الشاشة لشركاء المطوّرين فرصة لعرض أفضل المحتوى الغني في قناة مخصّصة خارج تطبيقاتهم. يتضمّن هذا الدليل تعليمات لشركاء المطوّرين بغرض دمج محتوى السفر والفعاليات باستخدام حزمة SDK لميزة "التفاعل" لتعبئة هذه المساحة الجديدة.
تفاصيل الدمج
المصطلحات
تشمل عملية الدمج هذه أنواع المجموعات الثلاثة التالية: الاقتراح والمميزة والمتابعة.
تعرض مجموعات الاقتراحات اقتراحات مخصّصة حول السفر والفعاليات من مطوّر فردي شريك. ويمكن أن تكون هذه الاقتراحات مخصّصة للمستخدم أو معممة (على سبيل المثال، المنتجات الرائجة). استخدِم هذه الاقتراحات لعرض مقالات أو أحداث أو أماكن إقامة أو أماكن تهمّك.
- يمكن إنشاء مجموعة اقتراحات من بيانات
ArticleEntity
أوEventEntity
أوLodgingEntity
أوPointOfInterestEntity
أوStoreEntity
، ولكن ليس من خلال مزيج من أنواع عناصر مختلفة.
تتّبع الاقتراحات البنية التالية:
مجموعة الاقتراحات: عرض واجهة مستخدم يحتوي على مجموعة من الاقتراحات من شريك المطوّر نفسه.
الكيان: هو عنصر يمثّل عنصرًا واحدًا في مجموعة. يوفّر هذا التكامل بعض الكيانات التي سيتم عرضها باستخدام ميزة "مجموعة الاقتراحات":
ArticleEntity: يمثّل ArticleEntity اقتراحًا لمحتوى مستند إلى النص حول السفر والفعاليات. ويمكن استخدامه في المقالات ومشاركات المدونات والمحتوى التسويقي ومقتطفات الأخبار وما إلى ذلك.
EventEntity: يمثّل EventEntity حدثًا سيحدث في المستقبل. وقت بدء الحدث هو معلومة مهمة يجب إعلام المستخدمين بها.
LodgingEntity: يمثّل LodgingEntity مكان إقامة، مثل فندق أو شقة أو منزل عطلات للإيجار على المدى القصير والقصير المدى .
StoreEntity: يمثّل StoreEntity متجرًا أو مطعمًا أو مقهى وغيرها، ويسلّط الضوء على المحتوى الذي يتضمن مكانًا لتناول الطعام أو متجرًا، وذلك لأنّه يُعدّ المكوّن الأساسي من المعلومات التي يجب إطلاع المستخدِمين عليها.
PointOfinterestEntity: تشير PointOfinterestEntity إلى مكان اهتمام، مثل محطة وقود أو مكان للفعاليات أو متنزّه ترفيهي أو متحف أو معلم سياحي أو مسار للتنزّه وما إلى ذلك. ويسلّط هذا الرسم البياني الضوء على المحتوى الذي يشكّل فيه الموقع الجغرافي جزءًا من المعلومات المهمة التي يجب نقلها إلى المستخدمين. لا ينبغي استخدامه للسكن أو المتجر أو المكان لتناول الطعام.
- يمكن إنشاء مجموعة اقتراحات من بيانات
تعرض مجموعة المتابعة المحتوى الذي تفاعل معه المستخدمون مؤخرًا من عدة شركاء مطوّرين في مجموعة واحدة لواجهة مستخدم. سيتم السماح لكل شريك مطوّر ببث 10 كيانات كحد أقصى في مجموعة "المتابعة".
يمكن أن يتّخذ محتوى المتابعة الهيكل التالي:
ArticleEntity: يمثّل ArticleEntity اقتراحًا لمحتوى يكون مرتبطًا بالسفر والفعاليات. يمكن استخدام هذا العنصر لتمثيل مقالات إخبارية غير مكتملة أو محتوى آخر يريد المستخدم مواصلة استهلاكه من حيث توقّف. مثال: مقتطف عن أخبار أو مدونة مقتطف عن وجهة سفر أو حدث
RestaurantBookEntity: يمثل RestaurantserveEntity حجز مطعم أو مقهى ويساعد المستخدمين في تتبع حجوزات المطاعم القادمة أو المستمرة.
EventReservationEntity: يمثّل EventReservationEntity حجزًا لحدث ويساعد المستخدمين في تتبُّع الحجوزات القادمة أو الجارية للأحداث. يمكن أن تتضمن الأحداث، على سبيل المثال لا الحصر، ما يلي:
- الفعاليات الرياضية، مثل حجز مباراة كرة قدم
- أحداث الألعاب، مثل حجز أماكن لفعاليات الرياضات الإلكترونية
- الفعاليات الترفيهية، مثل حجز تذاكر لحضور أفلام في السينما أو حفلة موسيقية أو مسرح أو توقيع كتاب
- حجوزات السفر أو حجوزات أماكن مميّزة، مثل الجولات الإرشادية وتذاكر المتاحف
- حجوزات الفعاليات الاجتماعية / الندوات / المؤتمرات
- حجوزات الدورات التدريبية أو التعليمية
LodgingReservationEntity: يمثّل LodgingEntityReservation حجزًا للإقامة أثناء السفر ويساعد المستخدمين في تتبُّع الحجوزات القادمة أو الحجوزات الجارية للفنادق أو أماكن الاستئجار.
TransportationReservationEntity: يمثّل TransportationReservationEntity حجزًا لنقل باستخدام أي وسيلة ويساعد المستخدمين في متابعة الحجوزات لرحلة جوية أو عبارة أو قطار أو حافلة أو مركبة أجرة أو رحلة بحرية قادمة أو جارية.
VehicleRentalACCOUNTEntity: يمثل AutomotiveRentalEntity حجز استئجار المركبات وتساعد المستخدمين في تتبع حجوزات استئجار المركبات القادمة أو المستمرة.
تعرض المجموعة المميزة مجموعة من الكيانات من عدة شركاء مطوّرين في مجموعة واحدة من واجهات المستخدم. ستكون هناك مجموعة واحدة مميّزة ، يتم عرضها بالقرب من أعلى واجهة المستخدم مع موضع أولوية فوق جميع مجموعات الاقتراحات. سيتم السماح لكل شريك مطوّر ببث ما يصل إلى 10 كيانات في المجموعة المميّزة.
publicFeaturedEntity: يختلف عنصر GenericFeaturedEntity عن عنصر الاقتراح هذا في هذا العنصر المميز للمحتوى الأساسي الواحد من المطورين، ويجب أن يمثل المحتوى الوحيد الأكثر أهمية الذي سيكون مثيرًا للاهتمام وذا صلة بالمستخدمين.
العمل التمهيدي
الحد الأدنى لمستوى واجهة برمجة التطبيقات: 19
أضِف مكتبة com.google.android.engage:engage-core
إلى تطبيقك باتّباع الخطوات التالية:
dependencies {
// Make sure you also include that repository in your project's build.gradle file.
implementation 'com.google.android.engage:engage-core:1.5.2'
}
ملخّص
يستند التصميم إلى تنفيذ خدمة مرتبطة.
تخضع البيانات التي يمكن للعميل نشرها للحدود التالية لأنواع المجموعات المختلفة:
نوع المجموعة | حدود المجموعات | الحد الأدنى لعدد العناصر في مجموعة | الحدود القصوى لعدد العناصر في مجموعة |
---|---|---|---|
مجموعات الاقتراحات | 5 بحد أقصى | 5 على الأقل | 25 عنصرًا بحد أقصى (ArticleEntity أو EventEntity أو
LodgingEntity أو StoreEntity أو
PointOfInterestEntity ) |
مجموعة المتابعة | 1 على الأكثر | 1 على الأقل | 10 على الأكثر (ArticleEntity أو
RestaurantReservationEntity
EventReservationEntity أو
LodgingReservationEntity أو
TransportationReservationEntity أو
VehicleRentalReservationEntity ) |
المجموعة المميزة | 1 بحد أقصى | 1 على الأقل | 10 كحد أقصى (GenericFeaturedEntity ) |
الخطوة 1: تقديم بيانات العنصر
حدّدت حزمة تطوير البرامج (SDK) كيانات مختلفة لتمثيل كل نوع من أنواع العناصر. نتيح استخدام الكيانات التالية لفئة "السفر والفعاليات":
GenericFeaturedEntity
ArticleEntity
EventEntity
LodgingEntity
StoreEntity
PointOfInterestEntity
RestaurantReservationEntity
EventReservationEntity
LodgingReservationEntity
TransportationReservationEntity
VehicleRentalReservationEntity
توضّح الرسوم البيانية أدناه السمات والمتطلبات المتاحة لكل نوع.
GenericFeaturedEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
صور الملصقات | مطلوب | سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 ملاحظة: في حال تقديم شارة، تأكَّد من ترك مساحة آمنة تبلغ 24 نقطة في البوصة في أعلى وأسفل الصورة. |
راجِع مواصفات الصور للحصول على إرشادات. |
العنوان | اختياري | عنوان الكيان | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 50 حرفًا |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
الشارات | اختياري | كل شارة هي إما نص حر (15 حرفًا بحد أقصى) أو صورة صغيرة. معالجة خاصة لتجربة المستخدم على سطح الصورة أو الفيديو، على سبيل المثال، كشارة فوق الصورة
|
|
الشارة - النص | اختياري | عنوان الشارة ملاحظة: يجب إدخال نص أو صورة للشارة. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 15 حرفًا كحد أقصى |
الشارة - صورة | اختياري | صورة صغيرة معالجة خاصة لتجربة المستخدم، مثل تراكب الشارة على الصورة/فيديو الصورة المصغّرة ملاحظة: يجب إدخال نص أو صورة للشارة. |
راجِع مواصفات الصور للحصول على إرشادات. |
فئات المحتوى | اختياري | يصف هذا الحقل فئة المحتوى في العنصر. | قائمة عمليات التعداد اطّلِع على قسم "فئة المحتوى" للحصول على إرشادات. |
ArticleEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 50 حرفًا بحد أقصى |
صور الملصقات | اختياري | سنعرض صورة واحدة فقط عند توفير صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 ملاحظة: يُنصح بشدة باستخدام صورة. إذا تم استخدام شارة، يجب ترك مساحة آمنة تبلغ 24 بكسل في الثانية في أعلى وأسفل الصورة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
المصدر - العنوان | اختياري | اسم المؤلف أو المؤسسة أو المُخبر | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 25 حرفًا |
المصدر: صورة | اختياري | صورة للمصدر، مثل المؤلف أو المؤسسة أو المراسل الصحفي | اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
الشارات | اختياري | تكون كل شارة عبارة عن نص مجاني (15 حرفًا كحد أقصى) أو صورة صغيرة. معالجة خاصة لتجربة المستخدم على سطح الصورة أو الفيديو، على سبيل المثال، كشارة فوق الصورة
|
|
الشارة - النص | اختياري | عنوان الشارة ملاحظة: يجب إدخال نص أو صورة للشارة. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 15 حرفًا كحد أقصى |
الشارة - صورة | اختياري | صورة صغيرة معالجة خاصة لتجربة المستخدم، مثل تراكب الشارة على الصورة/فيديو الصورة المصغّرة ملاحظة: يجب إدخال نص أو صورة للشارة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
وقت نشر المحتوى | اختياري | هذا هو الطابع الزمني لبدء حساب الفترة بالملي ثانية لوقت نشر المحتوى أو تعديله في التطبيق. | الطابع الزمني لحقبة Unix بالملي ثانية |
وقت التفاعل الأخير | مطلوبة بشروط | الطابع الزمني لبدء الحقبة بالمللي ثانية عندما تفاعل المستخدِم مع هذا الكيان للمرّة الأخيرة. ملاحظة: يكون هذا الحقل مطلوبًا إذا كان هذا الكيان جزءًا من مجموعة المتابعة. |
الطابع الزمني لحقبة Unix بالملي ثانية |
النسبة المئوية للتقدّم | مطلوبة بشروط | النسبة المئوية للمحتوى الكامل الذي استهلكه المستخدم حتى اليوم ملاحظة: يجب ملء هذا الحقل إذا كان هذا الكيان جزءًا من مجموعة المواصلة. |
قيمة عدد صحيح تتراوح بين 0 و100. |
فئات المحتوى | اختياري | يصف هذا الحقل فئة المحتوى في العنصر. | قائمة عمليات التعداد اطّلِع على قسم "فئة المحتوى" للحصول على إرشادات. |
EventEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | سلسلة حجم النص المقترَح: 50 حرفًا بحد أقصى |
وقت البدء | مطلوبة |
الطابع الزمني لبدء الفترة الزمنية عندما يُتوقّع بدء الحدث ملاحظة: سيتم تمثيل هذا المقياس بالملي ثانية. |
الطابع الزمني للحقبة بالمللي ثانية |
وضع الحدث | مطلوبة | حقل للإشارة إلى ما إذا كان الحدث سيكون افتراضيًا أو بالحضور الشخصي أو كلاهما |
نوع متغير معرّف: VIRTUAL أو IN_PERSON أو HYBRID |
صور الملصقات | مطلوب | سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9. ملاحظة: ننصح بشدة باستخدام الصورة. إذا تم استخدام شارة، يجب ترك مساحة آمنة تبلغ 24 بكسل في الثانية في أعلى وأسفل الصورة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الموقع الجغرافي - البلد | مطلوب بشكل مشروط | البلد الذي يقع فيه الحدث ملاحظة: يجب توفير هذه السمة للأحداث التي تكون IN_PERSON أو HYBRID. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - المدينة | مطلوبة بشروط | المدينة التي ستقام فيها الفعالية. ملاحظة: هذا الإجراء مطلوب للأحداث التي تكون IN_PERSON أو HYBRID. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع - العنوان المعروض | مطلوب بشكل مشروط | عنوان أو اسم المكان الذي سيُقام فيه الحدث والذي يجب عرضه للمستخدم ملاحظة: هذا الإجراء مطلوب للأحداث التي تكون IN_PERSON أو HYBRID. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان الشارع | اختياري | تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي ستستضيف فيه الفعالية. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
الموقع الجغرافي - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) التي يتم فيها استضافة الفعالية | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - الرمز البريدي | اختياري | الرمز البريدي (إن أمكن) للموقع الجغرافي الذي يتم فيه استضافة الفعالية | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - حي | اختياري | الحي (إن أمكن) الذي يتم فيه استضافة الحدث. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
وقت الانتهاء | اختياري |
الطابع الزمني لبدء حساب الفترة الزمنية الذي يُتوقّع فيه انتهاء الحدث ملاحظة: سيتم تمثيل ذلك بالملي ثانية. |
الطابع الزمني لحقبة Unix بالملي ثانية |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
الشارات | اختياري |
تكون كل شارة عبارة عن نص مجاني (15 حرفًا كحد أقصى) أو صورة صغيرة. |
|
الشارة - النص | اختياري | عنوان الشارة ملاحظة: يجب إدخال نص أو صورة للشارة. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 15 حرفًا كحد أقصى |
الشارة - صورة | اختياري | صورة صغيرة معالجة خاصة لتجربة المستخدم، مثل تراكب الشارة على الصورة/فيديو الصورة المصغّرة ملاحظة: يجب إدخال نص أو صورة للشارة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
السعر - CurrentPrice | مطلوبة بشروط |
السعر الحالي للتذكرة أو البطاقة للحدث. يجب تقديمها إذا تم تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | تمثّل هذه السمة السعر الأصلي للتذكرة/البطاقة الخاصة بالفعالية. | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
فئات المحتوى | اختياري | يصف هذا الحقل فئة المحتوى في العنصر. | قائمة التعدادات المؤهَّلة
اطّلِع على قسم "فئة المحتوى" للحصول على إرشادات. |
LodgingEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الاطّلاع على هذه الأسئلة الشائعة. |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | سلسلة حجم النص المقترَح: 50 حرفًا بحد أقصى |
صور الملصقات | مطلوب |
سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 ملاحظة: في حال تقديم شارة، تأكَّد من توفير مساحة آمنة تبلغ 24 بكسل في الثانية في أعلى وأسفل الصورة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الموقع الجغرافي - البلد | مطلوبة | البلد الذي يقع فيه مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - المدينة | مطلوب | المدينة التي يقع فيها مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان العرض | مطلوبة | عنوان مكان الإقامة الذي سيتم عرضه للمستخدم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان الشارع | اختياري | تمثّل هذه السمة عنوان شارع مكان الإقامة (إذا كان ذلك منطبقًا). | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
الموقع الجغرافي - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) التي يقع فيها مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - الرمز البريدي | اختياري | تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للمكان المخصّص للاستئجار. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - حي | اختياري | الحي (إن أمكن) الذي يقع فيه مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الشارات | اختياري |
تكون كل شارة عبارة عن نص مجاني (15 حرفًا كحد أقصى) أو صورة صغيرة. |
|
الشارة - النص | اختياري | عنوان الشارة ملاحظة: يجب إدخال نص أو صورة للشارة. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 15 حرفًا كحد أقصى |
الشارة - صورة | اختياري | صورة صغيرة معالجة خاصة لتجربة المستخدم، مثل تراكب الشارة على الصورة/فيديو الصورة المصغّرة ملاحظة: يجب إدخال نص أو صورة للشارة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
AvailabilityTimeWindow - Start Time | اختياري | الطابع الزمني لبدء الحقبة بالملي ثانية عندما يُتوقّع أن يكون مكان الإقامة مفتوحًا/متاحًا | الطابع الزمني لحقبة Unix بالملي ثانية |
AvailabilityTimeWindow - End Time | اختياري | الطابع الزمني لبدء حساب الفترة بالملي ثانية إلى أن يُتوقّع أن يكون مكان الإقامة مفتوحًا أو متاحًا. | الطابع الزمني لحقبة Unix بالملي ثانية |
التقييم - الحد الأقصى للقيمة | اختياري | الحد الأقصى لقيمة مقياس التقييم يجب تقديمها إذا تم تقديم القيمة الحالية للتقييم أيضًا . |
عدد أكبر من أو يساوي 0.0 |
التقييم - القيمة الحالية | اختياري | القيمة الحالية لمقياس التقييم يجب تقديمها إذا تم تقديم الحد الأقصى لقيمة التقييم أيضًا . |
العدد >= 0.0 |
التقييم - العدد | اختياري | عدد تقييمات مكان الإقامة ملاحظة: يُرجى إدخال هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرضه للمستخدمين. قدِّم السلسلة المختصرة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد هو 1,000,000، ننصحك باستخدام اختصارات مثل 1M، لكي لا يتم اقتطاعه على أحجام الشاشة الأصغر. |
سلسلة |
التقييم - قيمة العدد | اختياري | عدد تقييمات مكان الإقامة ملاحظة: أدخِل هذا الحقل إذا لم تكن تريد التعامل مع منطق اختصار العرض بنفسك. إذا كانت كلّ من السمتَين "العدد" و"قيمة العدد" متوفرتين، سنستخدم السمة "العدد" لعرضها للمستخدمين. |
الصيغة الطويلة |
السعر - السعر الحالي | مطلوب بشكل مشروط | تمثّل هذه السمة السعر الحالي للإقامة. يجب تقديمها إذا تم تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | السعر الأصلي للإقامة، والذي يتم شطبه في واجهة المستخدِم | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
StoreEntity
يمثّل عنصر StoreEntity
متجرًا فرديًا يريد شركاء المطوّرين
نشره، مثل مطعم أو متجر بقالة.
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
صور الملصق | مطلوب | يجب تقديم صورة واحدة على الأقل. | راجِع مواصفات الصور للحصول على إرشادات. |
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الاطّلاع على هذه الأسئلة الشائعة. |
معرّف موارد منتظم (URI) |
العنوان | اختياري | اسم المتجر | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
الموقع الجغرافي | اختياري | الموقع الجغرافي للمتجر | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
وسيلة الشرح | اختياري | نص ترويجي يعرض عرضًا ترويجيًا أو حدثًا أو تعديلًا للمتجر، إذا كان ذلك ممكنًا | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
أحكام العرض في وسائل الشرح | اختياري | نص الأحكام الدقيقة لوسيلة الشرح | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
الوصف | اختياري | وصف للمتجر | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 90 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
التقييم - الحد الأقصى للقيمة | اختياري | الحد الأقصى لقيمة مقياس التقييم يجب تقديمها إذا تم تقديم القيمة الحالية للتقييم أيضًا . |
عدد أكبر من أو يساوي 0.0 |
التقييم - القيمة الحالية | اختياري | القيمة الحالية لمقياس التقييم يجب تقديمها إذا تم تقديم الحد الأقصى لقيمة التقييم أيضًا . |
العدد >= 0.0 |
التقييم - العدد | اختياري | عدد تقييمات مكان الإقامة ملاحظة: يُرجى إدخال هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرضه للمستخدمين. قدِّم السلسلة المختصرة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد هو 1,000,000، ننصحك باستخدام اختصارات مثل 1M، لكي لا يتم اقتطاعه على أحجام الشاشة الأصغر. |
سلسلة |
التقييم - قيمة العدد | اختياري | عدد تقييمات مكان الإقامة ملاحظة: أدخِل هذا الحقل إذا لم تكن تريد التعامل مع منطق اختصار العرض بنفسك. إذا كانت كلّ من السمتَين "العدد" و"قيمة العدد" متوفرتين، سنستخدم السمة "العدد" لعرضها للمستخدمين. |
الصيغة الطويلة |
PointOfInterestEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | سلسلة حجم النص المقترَح: 50 حرفًا بحد أقصى |
صور الملصقات | مطلوب | سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9. ملاحظة: يُنصح بشدة باستخدام صورة. في حال تقديم شارة، احرص على توفير مساحة آمنة تبلغ 24 نقطة في الثانية في أعلى الصورة وأسفلها. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الموقع الجغرافي - البلد | مطلوبة | البلد الذي تقع فيه نقطة الاهتمام | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - المدينة | مطلوبة | المدينة التي تقع فيها نقطة الاهتمام | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان العرض | مطلوبة | تمثّل هذه السمة عنوان نقطة الاهتمام التي سيتم عرضها للمستخدم. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان الشارع | اختياري | عنوان الشارع (إن أمكن) لنقطة الاهتمام | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
الموقع الجغرافي - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) التي يقع فيها نقطة الاهتمام | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - الرمز البريدي | اختياري | الرمز البريدي لنقطة الاهتمام (إن أمكن) | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - حي | اختياري | الحي (إن أمكن) الذي تقع فيه نقطة الاهتمام | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
AvailabilityTimeWindow - Start Time | اختياري | الطابع الزمني لبدء الحقبة بالملي ثانية عندما يكون من المفترض أن تكون نقطة الاهتمام متاحة. | الطابع الزمني لحقبة Unix بالملي ثانية |
AvailabilityTimeWindow - End Time | اختياري | الطابع الزمني للحقبة بالمللي ثانية التي من المتوقّع أن تكون نقطة الاهتمام مفتوحة/متاحة قبلها | الطابع الزمني لحقبة Unix بالملي ثانية |
الشارات | اختياري |
تكون كل شارة عبارة عن نص مجاني (15 حرفًا كحد أقصى) أو صورة صغيرة. |
|
الشارة - النص | اختياري | عنوان الشارة ملاحظة: يجب إدخال نص أو صورة للشارة. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 15 حرفًا كحد أقصى |
الشارة - صورة | اختياري | صورة صغيرة معالجة خاصة لتجربة المستخدم، مثل تراكب الشارة على الصورة/فيديو الصورة المصغّرة ملاحظة: يجب إدخال نص أو صورة للشارة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل عنوان فرعي: 50 حرفًا كحدّ أقصى |
التقييم - الحد الأقصى للقيمة | اختياري | الحد الأقصى لقيمة مقياس التقييم يجب تقديمها إذا تم تقديم القيمة الحالية للتقييم أيضًا . |
عدد أكبر من أو يساوي 0.0 |
التقييم - القيمة الحالية | اختياري | القيمة الحالية لمقياس التقييم يجب تقديمها إذا تم تقديم الحد الأقصى لقيمة التقييم أيضًا . |
العدد >= 0.0 |
التقييم - العدد | اختياري | عدد التقييمات لنقطة الاهتمام ملاحظة: قدِّم هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذا المحتوى للمستخدمين. قدِّم السلسلة المختصرة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد هو 1,000,000، ننصحك باستخدام اختصارات مثل 1M، لكي لا يتم اقتطاعه على أحجام الشاشة الأصغر. |
سلسلة |
التقييم - قيمة العدد | اختياري | عدد التقييمات لنقطة الاهتمام. ملاحظة: قدِّم هذا الحقل إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. إذا كانت كلّ من السمتَين "العدد" و"قيمة العدد" متوفرتين، سنستخدم السمة "العدد" لعرضها للمستخدمين. |
الصيغة الطويلة |
السعر - السعر الحالي | مطلوبة بشروط |
تمثّل هذه السمة السعر الحالي للتذاكر/بطاقة الدخول لنقطة الاهتمام. يجب تقديمه في حال تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | السعر الأصلي للتذاكر أو بطاقة الدخول لنقطة الاهتمام | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد يُظهر النص الطويل جدًا علامات حذف) |
فئات المحتوى | اختياري | يصف هذا الحقل فئة المحتوى في العنصر. | قائمة التعدادات المؤهَّلة
اطّلِع على قسم "فئة المحتوى" للحصول على إرشادات. |
RestaurantReservationEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | سلسلة حجم النص المقترَح: 50 حرفًا كحد أقصى |
وقت بدء الحجز | مطلوبة | تشير هذه السمة إلى الطابع الزمني للحقبة بالملي ثانية التي كان من المتوقّع أن يبدأ الحجز خلالها. | الطابع الزمني لحقبة Unix بالملي ثانية |
الموقع الجغرافي - البلد | مطلوبة | البلد الذي يقع فيه المطعم. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - المدينة | مطلوبة | المدينة التي يقع فيها المطعم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان العرض | مطلوبة | تمثّل هذه السمة عنوان المطعم الذي سيتم عرضه للمستخدم. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان الشارع | اختياري | عنوان الشارع الذي يقع فيه المطعم (إذا كان ذلك منطبقًا). | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
الموقع الجغرافي - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) التي يقع فيها المطعم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - الرمز البريدي | اختياري | الرمز البريدي (إن أمكن) للمطعم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - حي | اختياري | الحي الذي يقع فيه المطعم (إذا كان ذلك منطبقًا) | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
صور الملصقات | اختياري | سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 | اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل عنوان فرعي: 50 حرفًا كحدّ أقصى |
مقاس الطاولة | اختياري | عدد الأشخاص في مجموعة الحجز | عدد صحيح أكبر من 0 |
EventReservationEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات معيّنة في عملية تحديد المصدر. يُرجى الاطّلاع على هذه الأسئلة الشائعة. |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | سلسلة حجم النص المقترَح: 50 حرفًا بحد أقصى |
وقت البدء | مطلوبة |
الطابع الزمني لبدء الفترة الزمنية عندما يُتوقّع بدء الحدث ملاحظة: سيتم تمثيل هذا المقياس بالملي ثانية. |
الطابع الزمني للحقبة بالمللي ثانية |
وضع الحدث | مطلوبة | حقل للإشارة إلى ما إذا كان الحدث سيكون افتراضيًا أو بالحضور الشخصي أو كلاهما |
نوع متغير معرّف: VIRTUAL أو IN_PERSON أو HYBRID |
الموقع الجغرافي - البلد | مطلوب بشكل مشروط | البلد الذي يقع فيه الحدث ملاحظة: يجب توفير هذه السمة للأحداث التي تكون IN_PERSON أو HYBRID. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - المدينة | مطلوبة بشروط | المدينة التي ستقام فيها الفعالية. ملاحظة: هذا الإجراء مطلوب للأحداث التي تكون IN_PERSON أو HYBRID. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع - العنوان المعروض | مطلوب بشكل مشروط | عنوان أو اسم المكان الذي سيُقام فيه الحدث والذي يجب عرضه للمستخدم ملاحظة: هذا الإجراء مطلوب للأحداث التي تكون IN_PERSON أو HYBRID. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان الشارع | اختياري | تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي ستستضيف فيه الفعالية. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
الموقع الجغرافي - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) التي يتم فيها استضافة الفعالية | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - الرمز البريدي | اختياري | الرمز البريدي (إن أمكن) للموقع الجغرافي الذي يتم فيه استضافة الفعالية | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - حي | اختياري | الحي (إن أمكن) الذي يتم فيه استضافة الحدث. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
صور الملصقات | اختياري | سنعرض صورة واحدة فقط عند توفير صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 ملاحظة: يُنصح بشدة باستخدام صورة. إذا تم استخدام شارة، يجب ترك مساحة آمنة تبلغ 24 بكسل في الثانية في أعلى وأسفل الصورة. |
راجِع مواصفات الصور للحصول على إرشادات. |
وقت الانتهاء | اختياري |
الطابع الزمني لبدء حساب الفترة الزمنية الذي يُتوقّع فيه انتهاء الحدث ملاحظة: سيتم تمثيل ذلك بالملي ثانية. |
الطابع الزمني لحقبة Unix بالملي ثانية |
مقدّم الخدمة - الاسم | اختياري |
اسم مقدّم الخدمة ملاحظة: يجب إدخال نص أو صورة لموفّر الخدمة. |
نص حر. على سبيل المثال، اسم منظِّم الحدث/جولة |
مقدِّم الخدمة - صورة | اختياري |
شعار/صورة مقدّم الخدمة ملاحظة: يجب إدخال نص أو صورة لمقدّم الخدمة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
الشارات | اختياري |
تكون كل شارة عبارة عن نص مجاني (15 حرفًا كحد أقصى) أو صورة صغيرة. |
|
الشارة - النص | اختياري | عنوان الشارة ملاحظة: يجب إدخال نص أو صورة للشارة. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 15 حرفًا كحد أقصى |
الشارة - صورة | اختياري | صورة صغيرة معالجة خاصة لتجربة المستخدم، مثل تراكب الشارة على الصورة/فيديو الصورة المصغّرة ملاحظة: يجب إدخال نص أو صورة للشارة. |
راجِع مواصفات الصور للحصول على إرشادات. |
رقم تعريف الحجز | اختياري | رقم تعريف الحجز لحجز الحدث. | حقل التعبئة النصّية الحرّة |
السعر - CurrentPrice | مطلوبة بشروط |
السعر الحالي للتذكرة أو البطاقة للحدث. يجب تقديمها إذا تم تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | تمثّل هذه السمة السعر الأصلي للتذكرة/البطاقة الخاصة بالفعالية. | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
التقييم - الحد الأقصى للقيمة | اختياري | الحد الأقصى لقيمة مقياس التقييم يجب تقديمها إذا تم تقديم القيمة الحالية للتقييم أيضًا . |
عدد أكبر من أو يساوي 0.0 |
التقييم - القيمة الحالية | اختياري | القيمة الحالية لمقياس التقييم يجب تقديمها إذا تم تقديم الحد الأقصى لقيمة التقييم أيضًا . |
العدد >= 0.0 |
التقييم - العدد | اختياري | تمثّل هذه السمة عدد التقييمات الخاصة بالحدث. ملاحظة: قدِّم هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذا المحتوى للمستخدمين. قدِّم السلسلة الموجزة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد هو 1,000,000، ننصحك باستخدام اختصارات مثل 1M، لكي لا يتم اقتطاعه على أحجام الشاشة الأصغر. |
سلسلة |
التقييم - قيمة العدد | اختياري | تمثّل هذه السمة عدد التقييمات الخاصة بالحدث. ملاحظة: قدِّم هذا الحقل إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. إذا كانت كلّ من السمتَين "العدد" و"قيمة العدد" متوفرتين، سنستخدم السمة "العدد" لعرضها للمستخدمين. |
الصيغة الطويلة |
فئات المحتوى | اختياري | يصف هذا الحقل فئة المحتوى في العنصر. | قائمة التعدادات المؤهَّلة
اطّلِع على قسم "فئة المحتوى" للحصول على إرشادات. |
LodgingReservationEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | نص حر على سبيل المثال، "إقامتك من 12 كانون الأول (ديسمبر)" حجم النص المقترَح: 50 حرفًا بحد أقصى |
وقت تسجيل الوصول | مطلوب | الطابع الزمني لبدء الحقبة بالمللي ثانية الذي يمثّل وقت تسجيل المغادرة للحجز | الطابع الزمني لحقبة Unix بالملي ثانية |
وقت المغادرة | مطلوب | الطابع الزمني لبدء الحقبة بالمللي ثانية الذي يمثّل وقت المغادرة للحجز | الطابع الزمني للحقبة بالمللي ثانية |
الموقع الجغرافي - البلد | مطلوب | البلد الذي يقع فيه مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - المدينة | مطلوبة | المدينة التي يقع فيها مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان العرض | مطلوبة | عنوان مكان الإقامة الذي سيتم عرضه للمستخدم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي: عنوان الشارع | اختياري | تمثّل هذه السمة عنوان شارع مكان الإقامة (إذا كان ذلك منطبقًا). | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
الموقع الجغرافي - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) التي يقع فيها مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - الرمز البريدي | اختياري | تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للمكان المخصّص للاستئجار. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
الموقع الجغرافي - حي | اختياري | الحي (إن أمكن) الذي يقع فيه مكان الإقامة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
صور الملصقات | اختياري |
سنعرض صورة واحدة فقط عند توفير صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 ملاحظة: في حال توفّر شارة، يجب توفير مساحة آمنة تبلغ 24 بكسل في الثانية في أعلى وأسفل الصورة. |
راجِع مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
رقم تعريف الحجز | اختياري | رقم تعريف الحجز الخاص بحجز مكان الإقامة. | حقل التعبئة النصّية الحرّة |
التقييم - الحد الأقصى للقيمة | اختياري | الحد الأقصى لقيمة مقياس التقييم يجب تقديمها إذا تم تقديم القيمة الحالية للتقييم أيضًا . |
عدد أكبر من أو يساوي 0.0 |
التقييم - القيمة الحالية | اختياري | القيمة الحالية لمقياس التقييم يجب تقديمها إذا تم تقديم الحد الأقصى لقيمة التقييم أيضًا . |
العدد >= 0.0 |
التقييم - العدد | اختياري | عدد تقييمات مكان الإقامة ملاحظة: يُرجى إدخال هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرضه للمستخدمين. قدِّم السلسلة المختصرة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد هو 1,000,000، ننصحك باستخدام اختصارات مثل 1M، لكي لا يتم اقتطاعه على أحجام الشاشة الأصغر. |
سلسلة |
التقييم - قيمة العدد | اختياري | عدد تقييمات مكان الإقامة ملاحظة: أدخِل هذا الحقل إذا لم تكن تريد التعامل مع منطق اختصار العرض بنفسك. إذا كانت كلّ من السمتَين "العدد" و"قيمة العدد" متوفرتين، سنستخدم السمة "العدد" لعرضها للمستخدمين. |
الصيغة الطويلة |
السعر - السعر الحالي | مطلوب بشكل مشروط | تمثّل هذه السمة السعر الحالي للإقامة. يجب تقديمها إذا تم تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | السعر الأصلي للإقامة، والذي يتم شطبه في واجهة المستخدِم | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
TransportationReservationEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الرجوع إلى هذه الأسئلة الشائعة |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | نص حر على سبيل المثال، "SFO إلى SAN" حجم النص المقترَح: 50 حرفًا كحد أقصى |
نوع النقل | مطلوبة | وسيلة/نوع النقل للحجز | قيم التعداد: FLIGHT أو TRAIN أو BUS أو FERRY |
وقت المغادرة | مطلوب | الطابع الزمني للحقبة بالمللي ثانية ويمثّل وقت المغادرة | الطابع الزمني لحقبة Unix بالملي ثانية |
وقت الوصول | مطلوب | الطابع الزمني لبدء الحقبة بالملي ثانية الذي يمثّل وقت الوصول | الطابع الزمني لحقبة Unix بالملي ثانية |
مكان المغادرة - البلد | اختياري | بلد المغادرة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
مكان المغادرة - المدينة | اختياري | مدينة المغادرة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
مكان المغادرة - عنوان العرض | اختياري | الموقع الجغرافي لمغادرة الرحلة الذي سيتم عرضه للمستخدم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
مكان المغادرة: عنوان الشارع | اختياري | عنوان الشارع (إن أمكن) لموقع المغادرة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
موقع المغادرة - الولاية | اختياري | تمثّل هذه السمة الولاية أو المقاطعة التي يقع فيها موقع المغادرة (إذا كان ذلك منطبقًا). | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
مكان المغادرة - الرمز البريدي | اختياري | الرمز البريدي (إن أمكن) لموقع المغادرة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
موقع المغادرة - الحي | اختياري | الحي (إن أمكن) لموقع المغادرة | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
مكان الوصول - البلد | اختياري | بلد الوصول | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
مكان الوصول - المدينة | اختياري | مدينة الوصول | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
موقع الوصول - العنوان المعروض | اختياري | الموقع الجغرافي للوصول الذي سيتم عرضه للمستخدم. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
مكان الوصول: عنوان الشارع | اختياري | عنوان الشارع (إن أمكن) لموقع الوصول | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
مكان الوصول - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) لمكان الوصول | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
مكان الوصول - الرمز البريدي | اختياري | الرمز البريدي (إن أمكن) لموقع الوصول | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
موقع الوصول - الحي | اختياري | الحي (إن أمكن) لموقع الوصول | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
مقدّم الخدمة - الاسم | اختياري |
اسم مقدّم الخدمة ملاحظة: يجب إدخال نص أو صورة لموفّر الخدمة. |
نص حر على سبيل المثال، اسم شركة الخطوط الجوية |
مقدّم الخدمة - صورة | اختياري |
شعار/صورة مقدّم الخدمة ملاحظة: يجب إدخال نص أو صورة لموفّر الخدمة. |
راجِع مواصفات الصور للحصول على إرشادات. |
صور الملصقات | اختياري |
سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
رقم تعريف الحجز | اختياري | رقم تعريف الحجز الخاص بحجز وسائل النقل. | حقل التعبئة النصّية الحرّة |
السعر - CurrentPrice | مطلوب بشكل مشروط | السعر الحالي للحجز. يجب تقديمها إذا تم تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | تمثّل هذه السمة السعر الأصلي للحجز، والذي يظهر ضمن واجهة المستخدم. | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
رقم وسائل النقل | مطلوب | رقم الرحلة الجوية أو رقم الحافلة أو رقم القطار أو رقم العبّارة/الرحلة البحرية. | حقل التعبئة النصّية الحرّة |
وقت الصعود على متن الطائرة | مطلوب | الطابع الزمني لبدء حساب الفترة الزمنية الذي يمثّل وقت الصعود إلى الطائرة للحجز (إن وُجد) | الطابع الزمني لحقبة Unix بالملي ثانية |
VehicleRentalReservationEntity
السمة | المتطلب | الوصف | التنسيق |
---|---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوبة |
رابط لصفحة في التطبيق ينقل إلى الكيان ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد المصدر. يُرجى الاطّلاع على هذه الأسئلة الشائعة. |
معرّف موارد منتظم (URI) |
العنوان | مطلوبة | عنوان الكيان | نص حر على سبيل المثال، "Avis Union Square SF" حجم النص المقترَح: 50 حرفًا بحد أقصى |
وقت الاستلام | مطلوبة | الطابع الزمني لبدء حساب الفترة الذي يمثّل وقت استلام الحجز | الطابع الزمني للحقبة بالمللي ثانية |
وقت العودة | اختياري | الطابع الزمني لبدء حساب الفترة الذي يمثّل وقت المغادرة للحجز | الطابع الزمني لحقبة Unix بالملي ثانية |
عنوان الاستلام - البلد | اختياري | تمثّل هذه السمة البلد الذي سيتم فيه استلام الطلب. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الاستلام - المدينة | اختياري | المدينة التي يقع فيها الموقع الجغرافي لاستلام الطلب | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الاستلام - العنوان المعروض | اختياري | الموقع الجغرافي لاستلام الطلب الذي سيظهر للمستخدم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الاستلام: عنوان الشارع | اختياري | تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) الذي يقع فيه الموقع الجغرافي للاستلام. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الاستلام - الولاية | اختياري | تمثل هذه السمة الولاية أو المقاطعة (إن أمكن) لموقع الاستلام. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الاستلام - الرمز البريدي | اختياري | تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي سيتم استلام الطلب منه. | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
عنوان الاستلام - الحي | اختياري | الحي (إن أمكن) لمكان الاستلام | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
عنوان الإرجاع - البلد | اختياري | بلد موقع الإرجاع | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
عنوان الإرجاع - المدينة | اختياري | مدينة الموقع الجغرافي للإرجاع | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الإرجاع - العنوان المعروض | اختياري | الموقع الجغرافي لإرجاع السلع الذي سيظهر للمستخدم | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الإرجاع: عنوان الشارع | اختياري | عنوان الشارع (إن أمكن) لموقع الإرجاع | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الإرجاع - الولاية | اختياري | الولاية أو المقاطعة (إن أمكن) للموقع الجغرافي الذي سيتم إرجاع المنتج إليه | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الإرجاع - الرمز البريدي | اختياري | الرمز البريدي (إن أمكن) لموقع الإرجاع | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا بحد أقصى |
عنوان الإرجاع - الحي | اختياري | الحي الذي يقع فيه الموقع الجغرافي لإرجاع المنتج (إذا كان ذلك منطبقًا) | حقل التعبئة النصّية الحرّة حجم النص المقترَح: 20 حرفًا تقريبًا |
مقدّم الخدمة - الاسم | اختياري |
اسم مقدّم الخدمة ملاحظة: يجب إدخال نص أو صورة لموفّر الخدمة. |
نص حر على سبيل المثال، "Avis Car Rental" |
مقدّم الخدمة - صورة | اختياري |
شعار/صورة مقدّم الخدمة ملاحظة: يجب إدخال نص أو صورة لموفّر الخدمة. |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
صور الملصقات | اختياري |
سنعرض صورة واحدة فقط عند توفير صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 |
اطّلِع على مواصفات الصور للحصول على إرشادات. |
الوصف | اختياري | فقرة واحدة من النص لوصف العنصر ملاحظة: سيتم عرض إما قائمة الوصف أو الترجمة للمستخدم، وليس لكلتا الخدمتين. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح: 180 حرفًا |
قائمة الترجمة | اختياري | ما يصل إلى 3 ترجمات، مع كل عنوان فرعي يحتوي على سطر واحد من النص. ملاحظة: سيتم إما عرض الوصف أو قائمة الترجمة والشرح للمستخدم، وليس كليهما. |
حقل التعبئة النصّية الحرّة حجم النص المقترَح لكل ترجمة: 50 حرفًا بحدٍ أقصى |
رقم تعريف التأكيد | اختياري | معرّف تأكيد حجز المركبة للإيجار | حقل التعبئة النصّية الحرّة |
السعر - CurrentPrice | مطلوب بشكل مشروط | السعر الحالي للحجز. يجب تقديمها إذا تم تقديم سعر مشطوب. |
حقل التعبئة النصّية الحرّة |
السعر - السعر الأصلي | اختياري | تمثّل هذه السمة السعر الأصلي للحجز، والذي يظهر ضمن واجهة المستخدم. | حقل التعبئة النصّية الحرّة |
وسيلة شرح السعر | اختياري | وسيلة شرح للسعر لإبراز عرض ترويجي أو فعالية أو خصم مخصّص للمشتركين، في حال توفّره | حقل التعبئة النصّية الحرّة حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا) |
مواصفات الصور
يتضمّن هذا الجدول المواصفات المطلوبة لمواد عرض الصور:
نسبة العرض إلى الارتفاع | الحدّ الأدنى لعدد وحدات البكسل | وحدات البكسل المقترَحة |
---|---|---|
مربّع (1×1) مفضّل |
300 × 300 | 1200 × 1200 |
أفقية (1.91x1) | 600 × 314 | 1200 × 628 |
عمودي (4×5) | 480×600 | 960x1200 |
يجب أن تكون الصور مستضافة على شبكات توصيل المحتوى (CDN) العامة حتى تتمكّن Google من الوصول إليها.
تنسيقات الملفات
PNG أو JPG أو GIF ثابت أو WebP
الحد الأقصى لحجم الملف
5120 كيلوبايت
اقتراحات إضافية
- المساحة الآمنة للصور: ضَع المحتوى المهم في الوسط بحيث يشغل 80% من الصورة.
- استخدِم خلفية شفافة حتى تتمكّن من عرض الصورة بشكل صحيح في إعدادات المظهر الداكن والفاتح.
فئة المحتوى
تسمح فئة المحتوى للتطبيقات بنشر محتوى ينتمي إلى عدة فئات. يؤدي ذلك إلى ربط المحتوى ببعض الفئات المحدّدة مسبقًا، وهي:
TYPE_EDUCATION
TYPE_SPORTS
TYPE_MOVIES_AND_TV_SHOWS
TYPE_BOOKS
TYPE_AUDIOBOOKS
TYPE_MUSIC
TYPE_DIGITAL_GAMES
TYPE_TRAVEL_AND_LOCAL
TYPE_HOME_AND_AUTO
TYPE_BUSINESS
TYPE_NEWS
TYPE_FOOD_AND_DRINK
TYPE_SHOPPING
TYPE_HEALTH_AND_FITENESS
TYPE_MEDICAL
TYPE_PARENTING
TYPE_DATING
يجب أن تكون الصور مستضافة على شبكات توصيل المحتوى (CDN) العامة حتى تتمكّن Google من الوصول إليها.
إرشادات حول استخدام فئات المحتوى
- إنّ بعض الكيانات، مثل ArticleEntity وGenericFeaturedEntity، مؤهَّلة لاستخدام أيّ من فئات المحتوى. بالنسبة إلى الكيانات الأخرى، مثل EventEntity وEventReservationEntity وPointOfInterestEntity، تكون فقط مجموعة فرعية من هذه الفئات مؤهَّلة. راجِع قائمة الفئات المؤهَّلة لنوع عنصر معيّن قبل تعبئة القائمة.
استخدم نوع الكيان المحدد لبعض فئات المحتوى على مجموعة من الكيانات العامة وContentCategory:
- TYPE_MOVIES_AND_TV_SHOWS: اطّلِع على الكيانات من دليل دمج Watch قبل استخدام الكيانات العامة.
- TYPE_BOOKS: اطّلِع على EbookEntity قبل استخدام الكيانات العامة.
- TYPE_AUDIOBOOKS: اطّلِع على AudiobookEntity قبل استخدام الكيانات العامة.
- TYPE_SHOPPING: اطّلِع على ShoppingEntity قبل استخدام الكيانات العامة.
- TYPE_FOOD_AND_DRINK: اطّلِع على الكيانات من دليل دمج البيانات الغذائية قبل استخدام الكيانات العامة.
حقل ContentCategory اختياري ويجب تركه فارغًا إذا كان المحتوى لا ينتمي إلى أي من الفئات المذكورة سابقًا.
في حال توفير فئات محتوى متعددة، يجب توفيرها بترتيب مدى صلتها بالمحتوى مع وضع فئة المحتوى الأكثر صلة فيه أولاً في القائمة.
الخطوة 2: تقديم بيانات المجموعة
ننصحك بتنفيذ مهمة نشر المحتوى في الخلفية (على سبيل المثال، باستخدام WorkManager) وتحديد موعد لها بانتظام أو استنادًا إلى حدث (على سبيل المثال، في كل مرة يفتح فيها المستخدم التطبيق أو عندما يضيف مستخدم عنصرًا إلى سلة التسوّق).
تتحمّل "AppEngagePublishClient
" مسؤولية نشر المجموعات.
في ما يلي واجهات برمجة التطبيقات التالية لنشر المجموعات في العميل:
isServiceAvailable
publishRecommendationClusters
publishFeaturedCluster
publishContinuationCluster
publishUserAccountManagementRequest
updatePublishStatus
deleteRecommendationsClusters
deleteFeaturedCluster
deleteContinuationCluster
deleteUserManagementCluster
deleteClusters
isServiceAvailable
تُستخدَم واجهة برمجة التطبيقات هذه للتحقّق مما إذا كانت الخدمة متاحة للدمج وما إذا كان يمكن عرض المحتوى على الجهاز.
Kotlin
client.isServiceAvailable.addOnCompleteListener { task -> if (task.isSuccessful) { // Handle IPC call success if(task.result) { // Service is available on the device, proceed with content publish // calls. } else { // Service is not available, no further action is needed. } } else { // The IPC call itself fails, proceed with error handling logic here, // such as retry. } }
Java
client.isServiceAvailable().addOnCompleteListener(task - > { if (task.isSuccessful()) { // Handle success if(task.getResult()) { // Service is available on the device, proceed with content publish // calls. } else { // Service is not available, no further action is needed. } } else { // The IPC call itself fails, proceed with error handling logic here, // such as retry. } });
publishRecommendationClusters
تُستخدَم واجهة برمجة التطبيقات هذه لنشر قائمة بعناصر RecommendationCluster
.
Kotlin
client.publishRecommendationClusters( PublishRecommendationClustersRequest.Builder() .addRecommendationCluster( RecommendationCluster.Builder() .addEntity(entity1) .addEntity(entity2) .setTitle("Top Picks For You") .build() ) .build() )
Java
client.publishRecommendationClusters( new PublishRecommendationClustersRequest.Builder() .addRecommendationCluster( new RecommendationCluster.Builder() .addEntity(entity1) .addEntity(entity2) .setTitle("Top Picks For You") .build()) .build());
عندما تتلقّى الخدمة الطلب، يتم تنفيذ الإجراءات التالية في معاملة واحدة:
- تتم إزالة بيانات
RecommendationCluster
الحالية من حساب الشريك المطوّر. - يتم تحليل البيانات الواردة من الطلب وتخزينها في Recommendation Cluster المعدَّلة.
في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.
publishFeaturedCluster
تُستخدَم واجهة برمجة التطبيقات هذه لنشر قائمة تتضمّن عناصر FeaturedCluster
.
Kotlin
client.publishFeaturedCluster( PublishFeaturedClusterRequest.Builder() .setFeaturedCluster( FeaturedCluster.Builder() .addEntity(entity1) .addEntity(entity2) .build()) .build())
Java
client.publishFeaturedCluster( new PublishFeaturedClustersRequest.Builder() .addFeaturedCluster( new FeaturedCluster.Builder() .addEntity(entity1) .addEntity(entity2) .build()) .build());
عندما تتلقّى الخدمة الطلب، يتم تنفيذ الإجراءات التالية في معاملة واحدة:
- تتم إزالة بيانات
FeaturedCluster
الحالية من حساب الشريك المطوّر. - يتم تحليل البيانات الواردة من الطلب وتخزينها في "مجموعة الإعلانات المميّزة" المعدّلة.
في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.
publishContinuationCluster
تُستخدَم واجهة برمجة التطبيقات هذه لنشر عنصر ContinuationCluster
.
Kotlin
client.publishContinuationCluster( PublishContinuationClusterRequest.Builder() .setContinuationCluster( ContinuationCluster.Builder() .addEntity(entity1) .addEntity(entity2) .build()) .build())
Java
client.publishContinuationCluster( new PublishContinuationClusterRequest.Builder() .setContinuationCluster( new ContinuationCluster.Builder() .addEntity(entity1) .addEntity(entity2) .build()) .build());
عندما تتلقّى الخدمة الطلب، يتم تنفيذ الإجراءات التالية في معاملة واحدة:
- تتم إزالة بيانات
ContinuationCluster
الحالية من حساب الشريك المطوّر. - يتم تحليل البيانات الواردة من الطلب وتخزينها في Continuation Cluster المعدَّل.
وفي حال حدوث خطأ، يتم رفض الطلب بأكمله والحفاظ على الحالة الحالية.
publishUserAccountManagementRequest
تُستخدَم واجهة برمجة التطبيقات هذه لنشر بطاقة تسجيل الدخول. يوجّه إجراء تسجيل الدخول المستخدمين إلى صفحة تسجيل الدخول في التطبيق حتى يتمكّن التطبيق من نشر المحتوى (أو تقديم محتوى أكثر تخصيصًا).
البيانات الوصفية التالية هي جزء من بطاقة تسجيل الدخول:
السمة | المتطلب | الوصف |
---|---|---|
معرّف الموارد المنتظم (URI) للإجراء | مطلوب | رابط لصفحة في التطبيق (أي الانتقال إلى صفحة تسجيل الدخول إلى التطبيق) |
صورة | اختياري - يجب توفير العنوان في حال عدم تقديمه |
الصورة المعروضة على البطاقة صور بنسبة عرض إلى ارتفاع 16×9 بدرجة دقة 1264×712 |
العنوان | اختيارية - يجب تقديم صورة في حال عدم توفّرها | العنوان على البطاقة |
نص الإجراء | اختياري | النص المعروض على عبارة الحث على اتّخاذ إجراء (مثل "تسجيل الدخول") |
العنوان الفرعي | اختياري | ترجمة اختيارية على البطاقة |
Kotlin
var SIGN_IN_CARD_ENTITY = SignInCardEntity.Builder() .addPosterImage( Image.Builder() .setImageUri(Uri.parse("http://www.x.com/image.png")) .setImageHeightInPixel(500) .setImageWidthInPixel(500) .build()) .setActionText("Sign In") .setActionUri(Uri.parse("http://xx.com/signin")) .build() client.publishUserAccountManagementRequest( PublishUserAccountManagementRequest.Builder() .setSignInCardEntity(SIGN_IN_CARD_ENTITY) .build());
Java
SignInCardEntity SIGN_IN_CARD_ENTITY = new SignInCardEntity.Builder() .addPosterImage( new Image.Builder() .setImageUri(Uri.parse("http://www.x.com/image.png")) .setImageHeightInPixel(500) .setImageWidthInPixel(500) .build()) .setActionText("Sign In") .setActionUri(Uri.parse("http://xx.com/signin")) .build(); client.publishUserAccountManagementRequest( new PublishUserAccountManagementRequest.Builder() .setSignInCardEntity(SIGN_IN_CARD_ENTITY) .build());
عندما تتلقّى الخدمة الطلب، يتم تنفيذ الإجراءات التالية في معاملة واحدة:
- تتم إزالة بيانات
UserAccountManagementCluster
الحالية من المطوِّر الشريك . - يتم تحليل البيانات من الطلب وتخزينها في المجموعة المحدّثة UserAccountManagementCluster.
وفي حال حدوث خطأ، يتم رفض الطلب بأكمله والحفاظ على الحالة الحالية.
updatePublishStatus
إذا لم يتم نشر أيّ من المجموعات لأي سبب داخلي للنشاط التجاري، ننصحك بشدة بتعديل حالة النشر باستخدام واجهة برمجة التطبيقات updatePublishStatus. وهذا أمر مهم للأسباب التالية :
- من المهمّ تقديم الحالة في جميع السيناريوهات، حتى عند نشر المحتوى (STATUS == PUBLISHED)، وذلك لملء لوحات البيانات التي تستخدِم هذه الحالة الواضحة للتعبير عن حالة الدمج والمقاييس الأخرى.
- إذا لم يتم نشر أي محتوى ولكن حالة الدمج ليست متعطّلة (STATUS == NOT_PUBLISHED)، يمكن أن تتجنب Google تنشيط التنبيهات في لوحات بيانات صحة التطبيق. يؤكد ذلك عدم نشر المحتوى بسبب حالة متوقّعة من وجهة نظر مقدّم الخدمة.
- ويساعد المطوّرين في تقديم إحصاءات عن الحالات التي يتم فيها نشر البيانات مقارنةً بحالات عدم نشرها.
- قد تستخدم Google رموز الحالة لحثّ المستخدم على اتّخاذ إجراءات معيّنة في التطبيق حتى يتمكّن من الاطّلاع على محتوى التطبيق أو حلّ المشكلة.
في ما يلي قائمة برموز حالة النشر المؤهَّلة:
// Content is published
AppEngagePublishStatusCode.PUBLISHED,
// Content is not published as user is not signed in
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN,
// Content is not published as user is not subscribed
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SUBSCRIPTION,
// Content is not published as user location is ineligible
AppEngagePublishStatusCode.NOT_PUBLISHED_INELIGIBLE_LOCATION,
// Content is not published as there is no eligible content
AppEngagePublishStatusCode.NOT_PUBLISHED_NO_ELIGIBLE_CONTENT,
// Content is not published as the feature is disabled by the client
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_FEATURE_DISABLED_BY_CLIENT,
// Content is not published as the feature due to a client error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_CLIENT_ERROR,
// Content is not published as the feature due to a service error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_SERVICE_ERROR,
// Content is not published due to some other reason
// Reach out to engage-developers@ before using this enum.
AppEngagePublishStatusCode.NOT_PUBLISHED_OTHER
إذا لم يتم نشر المحتوى بسبب عدم تسجيل دخول المستخدم، سينصح فريق Google بنشر بطاقة تسجيل الدخول. إذا لم يتمكّن مقدّمو الخدمات من نشر بطاقة تسجيل الدخول لأي سبب، ننصحك بالاتصال بواجهة برمجة التطبيقات updatePublishStatus باستخدام رمز الحالة NOT_PUBLISHED_REQUIRES_SIGN_IN.
Kotlin
client.updatePublishStatus( PublishStatusRequest.Builder() .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN) .build())
Java
client.updatePublishStatus( new PublishStatusRequest.Builder() .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN) .build());
deleteRecommendationClusters
تُستخدَم واجهة برمجة التطبيقات هذه لحذف محتوى مجموعات الاقتراحات.
Kotlin
client.deleteRecommendationClusters()
Java
client.deleteRecommendationClusters();
عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من مجموعات الاقتراحات. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويظلّ الإجراء الحالي ساريًا.
deleteFeaturedCluster
يتم استخدام واجهة برمجة التطبيقات هذه لحذف محتوى "المجموعة المميزة".
Kotlin
client.deleteFeaturedCluster()
Java
client.deleteFeaturedCluster();
عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من المجموعة المميّزة. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الاحتفاظ بالحالة الحالية.
deleteContinuationCluster
يتم استخدام واجهة برمجة التطبيقات هذه لحذف محتوى مجموعة Continuation Cluster.
Kotlin
client.deleteContinuationCluster()
Java
client.deleteContinuationCluster();
عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من مجموعة المتابعة. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويظلّ الإجراء الحالي ساريًا.
deleteUserManagementCluster
يتم استخدام واجهة برمجة التطبيقات هذه لحذف محتوى مجموعة UserAccountManagement.
Kotlin
client.deleteUserManagementCluster()
Java
client.deleteUserManagementCluster();
عندما تتلقى الخدمة الطلب، تزيل البيانات الحالية من مجموعة UserAccountManagement. وفي حالة حدوث خطأ، يتم رفض الطلب بأكمله مع الحفاظ على الحالة الحالية.
deleteClusters
تُستخدَم واجهة برمجة التطبيقات هذه لحذف محتوى نوع مجموعة معيّن.
Kotlin
client.deleteClusters( DeleteClustersRequest.Builder() .addClusterType(ClusterType.TYPE_CONTINUATION) .addClusterType(ClusterType.TYPE_FEATURED) .addClusterType(ClusterType.TYPE_RECOMMENDATION) .build())
Java
client.deleteClusters( new DeleteClustersRequest.Builder() .addClusterType(ClusterType.TYPE_CONTINUATION) .addClusterType(ClusterType.TYPE_FEATURED) .addClusterType(ClusterType.TYPE_RECOMMENDATION) .build());
عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من جميع المجموعات التي تتطابق مع أنواع المجموعات المحدّدة. يمكن للعملاء اختيار تمرير نوع واحد أو العديد من أنواع المجموعات. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الاحتفاظ بالحالة الحالية.
معالجة الأخطاء
ننصحك بشدة بالاستماع إلى نتيجة المهمة من واجهات برمجة التطبيقات للنشر، وذلك لاتخاذ إجراء متابعة لاسترداد مهمة ناجحة وإعادة إرسالها.
Kotlin
client.publishRecommendationClusters( PublishRecommendationClustersRequest.Builder() .addRecommendationCluster(..) .build()) .addOnCompleteListener { task -> if (task.isSuccessful) { // do something } else { val exception = task.exception if (exception is AppEngageException) { @AppEngageErrorCode val errorCode = exception.errorCode if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) { // do something } } } }
Java
client.publishRecommendationClusters( new PublishRecommendationClustersRequest.Builder() .addRecommendationCluster(...) .build()) .addOnCompleteListener( task -> { if (task.isSuccessful()) { // do something } else { Exception exception = task.getException(); if (exception instanceof AppEngageException) { @AppEngageErrorCode int errorCode = ((AppEngageException) exception).getErrorCode(); if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) { // do something } } } });
يتم عرض الخطأ على أنّه AppEngageException
مع تضمين السبب على أنّه
رمز خطأ.
رمز الخطأ | اسم الخطأ | ملاحظة |
---|---|---|
1 |
SERVICE_NOT_FOUND |
الخدمة غير متاحة على الجهاز المحدّد. |
2 |
SERVICE_NOT_AVAILABLE |
الخدمة متاحة على الجهاز المحدّد، ولكنها غير متاحة في وقت المكالمة (على سبيل المثال، تم إيقافها صراحةً). |
3 |
SERVICE_CALL_EXECUTION_FAILURE |
تعذّر تنفيذ المهمة بسبب حدوث مشاكل في سلاسل المحادثات. في هذه الحالة، يمكن إعادة المحاولة. |
4 |
SERVICE_CALL_PERMISSION_DENIED |
لا يُسمح للمتصل بإجراء مكالمة الدعم. |
5 |
SERVICE_CALL_INVALID_ARGUMENT |
يحتوي الطلب على بيانات غير صالحة (على سبيل المثال، أكثر من عدد المجموعات المسموح به). |
6 |
SERVICE_CALL_INTERNAL |
حدث خطأ من جهة الخدمة. |
7 |
SERVICE_CALL_RESOURCE_EXHAUSTED |
يتم إجراء طلب الخدمة بشكل متكرّر جدًا. |
الخطوة 3: التعامل مع أهداف البث
بالإضافة إلى إجراء طلبات نشر محتوى من واجهة برمجة التطبيقات من خلال مهمة، يجب أيضًا
إعداد
BroadcastReceiver
لتلقّي
طلب نشر المحتوى.
يتمثل الهدف الرئيسي من أذونات البث في إعادة تفعيل التطبيق وفرض مزامنة البيانات. لم يتم تصميم مكوّنات intent للبث لإرسالها بشكل متكرّر جدًا. ولا يتم تفعيله إلا عندما تحدّد "خدمة التفاعل" أنّ المحتوى قد يكون قديمًا (مثلاً، إذا مرّ عليه أسبوع). بهذه الطريقة، يمكن للمستخدم الاستفادة من تجربة محتوى جديدة، حتى إذا لم يتم تنفيذ التطبيق لعدة أشهر.
يجب إعداد جهاز BroadcastReceiver
بالطريقتَين التاليتَين:
- سجِّل مثيلًا من فئة
BroadcastReceiver
ديناميكيًا باستخدامContext.registerReceiver()
. يتيح ذلك التواصل من التطبيقات التي لا تزال نشطة في الذاكرة.
Kotlin
class AppEngageBroadcastReceiver : BroadcastReceiver(){ // Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast // is received // Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received // Trigger continuation cluster publish when PUBLISH_CONTINUATION broadcast is // received } fun registerBroadcastReceivers(context: Context){ var context = context context = context.applicationContext // Register Recommendation Cluster Publish Intent context.registerReceiver(AppEngageBroadcastReceiver(), IntentFilter(Intents.ACTION_PUBLISH_RECOMMENDATION)) // Register Featured Cluster Publish Intent context.registerReceiver(AppEngageBroadcastReceiver(), IntentFilter(Intents.ACTION_PUBLISH_FEATURED)) // Register Continuation Cluster Publish Intent context.registerReceiver(AppEngageBroadcastReceiver(), IntentFilter(Intents.ACTION_PUBLISH_CONTINUATION)) }
Java
class AppEngageBroadcastReceiver extends BroadcastReceiver { // Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast // is received // Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received // Trigger continuation cluster publish when PUBLISH_CONTINUATION 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)); // Register Featured Cluster Publish Intent context.registerReceiver(new AppEngageBroadcastReceiver(), new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_FEATURED)); // Register Continuation Cluster Publish Intent context.registerReceiver(new AppEngageBroadcastReceiver(), new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_CONTINUATION)); }
- أعلن بشكل ثابت عن عملية تنفيذ باستخدام العلامة
<receiver>
في ملفAndroidManifest.xml
. يتيح ذلك للتطبيق تلقّي طلبات البث عندما لا يكون قيد التشغيل، كما يتيح للتطبيق نشر المحتوى.
<application>
<receiver
android:name=".AppEngageBroadcastReceiver"
android:exported="true"
android:enabled="true">
<intent-filter>
<action android:name="com.google.android.engage.action.PUBLISH_RECOMMENDATION" />
</intent-filter>
<intent-filter>
<action android:name="com.google.android.engage.action.PUBLISH_FEATURED" />
</intent-filter>
<intent-filter>
<action android:name="com.google.android.engage.action.PUBLISH_CONTINUATION" />
</intent-filter>
</receiver>
</application>
تُرسِل ال خدمة الأهداف التالية:
com.google.android.engage.action.PUBLISH_RECOMMENDATION
يُنصح ببدء مكالمةpublishRecommendationClusters
عند تلقّي هذه النية.com.google.android.engage.action.PUBLISH_FEATURED
ننصح ببدء مكالمةpublishFeaturedCluster
عند تلقّي هذا الطلب.com.google.android.engage.action.PUBLISH_CONTINUATION
ننصح ببدء مكالمةpublishContinuationCluster
عند تلقّي هذا الطلب.
سير عمل الدمج
للحصول على دليل مفصّل حول التحقّق من عملية الدمج بعد اكتمالها، يُرجى الاطّلاع على Engage developer integration workflow (سير عمل دمج المطوّرين).
الأسئلة الشائعة
يمكنك الاطّلاع على الأسئلة الشائعة حول حزمة Engage SDK للحصول على الأسئلة الشائعة.
معلومات الاتصال
يُرجى التواصل مع engage-developers@google.com إذا كانت لديك أي أسئلة أثناء عملية الدمج.
الخطوات التالية
بعد إكمال عملية الدمج هذه، اتّبِع الخطوات التالية:
- أرسِل رسالة إلكترونية إلى Engagement-developers@google.com وإرفاق حِزمة APK المدمجة والجاهزة للاختبار من قِبل Google.
- تُجري Google عملية تحقّق ومراجعات داخلية للتأكّد من أنّ عملية دمج المحتوى تعمل على النحو المتوقّع. إذا كانت هناك حاجة إلى إجراء تغييرات، ستتواصل معك Google لإطلاعك على أي تفاصيل ضرورية.
- عند اكتمال الاختبار وعدم الحاجة إلى إجراء أي تغييرات، تتواصل معك Google لإعلامك بأنّه يمكنك بدء نشر حزمة APK المعدَّلة والمدمجة على "متجر Play".
- بعد أن تؤكد Google أنّه تم نشر حزمة APK المعدَّلة على متجر Play، قد يتم نشر مجموعات الاقتراحات والمحتوى المميّز والمحتوى الذي يتابعه المستخدمون وتصبح مرئية للمستخدمين.