المشاركة في Messenger لنظام تشغيل iOS وAndroid

عندما تقوم بالتطوير باستخدام مجموعة Facebook SDK لنظام iOS أو Android بالإصدار 4.29.0 أو الإصدارات الأحدث، يمكنك السماح للأشخاص بمشاركة الروابط والوسائط من تطبيقك إلى Messenger. عندما يشارك المستخدم محتوى في Messenger، يمكنك تشغيل ملحقات الدردشة عبر رابط الإسناد. تظهر ملحقات الدردشة في قسم المزيد ضمن واجهة المشاركة.

لمزيد من المعلومات، يمكنك الاطلاع على الأقسام التالية:

بالنسبة لتنفيذ المشاركة في Messenger على الويب، يمكنك الرجوع إلى المشاركة في Messenger على الويب.

أنواع المشاركة

توفر مجموعة Facebook SDK أنواع المشاركة التالية:

  • مشاركة الرابط (تمامًا مثل عملية مشاركة الرابط الحالية إلا أنها تتضمن pageID للإسناد)
  • الصورة (لا يتم إسنادها)

يضم الجدول التالي كل أنواع المشاركة المدعومة في ميزة المشاركة في Messenger، بالإضافة إلى تحديد ما إذا كان معرف الصفحة أو التطبيق مطلوبًا.

نوع المشاركة هل معرف الصفحة مطلوب؟ التطبيقات

مشاركة الرابط

اختياري

  • رابط بدون إسناد
  • رابط يحتوي على إسناد

الصورة

غير مدعوم

  • الصور
  • صورة من مكتبة الصور

ربط معرفات الصفحة والتطبيق

يمكن للمطوّرين تحديد معرف الصفحة في دفق المشاركة، وعندما يشارك الأشخاص المحتوى من أحد التطبيقات إلى messenger باستخدام مجموعة SDK للمشاركة، يتم إسناد المحتوى إلى الصفحة. كما يمكن لمسؤولي الصفحة بدورهم منع عمليات الإسناد الخاطئة عن طريق التحكم في التطبيقات التي يمكنها استخدام إسناد المشاركة في صفحاتهم. لمنح إسناد المشاركة لأحد التطبيقات، يتعين على المسؤول ربط معرف التطبيق مع معرف الصفحة.

لربط معرف التطبيق ومعرف الصفحة:

  1. انتقل إلى الإعدادات على الصفحة.
  2. انقر على القسم منصة Messenger.
  3. انتقل إلى القسم ربط تطبيق في الإعدادات العامة".
  4. أدخل معرف التطبيق وانقر على الزر ربط.
  5. إذا لم يكن هذا التطبيق موجودًا في جدول التطبيقات المشترِكة بالفعل، فسيظهر في الجدول مع دور "إسناد المشاركة" المرتبط به. أما إذا كان التطبيق موجودًا بالفعل في الجدول، فستتم إضافة الدور الجديد "إسناد المشاركة" إلى هذا التطبيق.

يمكن لمسؤولي الصفحة أيضًا إزالة إذن التطبيق لاستخدام إسناد المشاركة.

لإزالة الدور "إسناد المشاركة" من تطبيق محدد:

  1. في جدول التطبيقات المشترِكة، انقر على القائمة المنسدلة في عمود "الدور" للتطبيق.
  2. انقر على "إسناد المشاركة" لإلغاء تحديد الدور.
  3. إذا كان "إسناد المشاركة" هو الدور الوحيد الممنوح للتطبيق، فستتم إزالة صف التطبيق من الجدول. وبخلاف ذلك، يظل الصف موجودًا ولكن يتم إلغاء تحديد صف "إسناد المشاركة".

تسجيل النطاقات

إذا كنت تستخدم زر عنوان URL في مجموعة SDK المشاركة وتريد تمكين ملحق Messenger عند فتح عنوان URL في Messenger، فيجب تسجيل نطاق عنوان URL حتى تعمل المشاركة بشكل صحيح.

لتسجيل نطاق ما:

  1. اعرض الصفحة.
  2. انتقل إلى الإعدادات > المراسلة المتقدمة.
  3. أضف النطاق إلى الحقل النطاقات الموجودة في القائمة البيضاء.

لمزيد من المعلومات، يمكنك الرجوع إلى مجموعة SDK لملحقات Messenger - عملية إضافة النطاق المطلوب إلى القائمة البيضاء.

iOS

المتطلبات الأساسية

قبل إضافة ميزة المشاركة في Messenger إلى تطبيقك، يجب إكمال الخطوات التالية:

لمزيد من المعلومات، راجع بدء استخدام مجموعة Facebook SDK لنظام iOS

كما يجب التأكد من قيام تطبيقك باستدعاء canShow أو validate في المثيل MessageDialog لتحديد ما إذا كان لدى الأشخاص إصدار متوافق من Messenger مثبّت على أجهزتهم أم لا.

التقييدات

خاصية الاقتباس غير مدعومة.

مثال على مشاركة رابط

guard let url = URL(string: "https://newsroom.fb.com/") else {
    preconditionFailure("URL is invalid")
}

let content = ShareLinkContent()
content.contentURL = url

let dialog = MessageDialog(content: content, delegate: self)

do {
    try dialog.validate()
} catch {
    print(error)
}

dialog.show()

مثال على مشاركة صورة

// Assumes your assets contain an image named "puppy"
guard let image = UIImage(named: "puppy") else {
    return
}

let photo = SharePhoto(image: image, userGenerated: true)
let content = SharePhotoContent()
        content.photos = [photo]

let dialog = MessageDialog(content: content, delegate: self)

// Recommended to validate before trying to display the dialog
do {
    try dialog.validate()
} catch {
    print(error)
}

dialog.show()

مثال على مشاركة فيديو

// Assuming you have a URL for a PHAsset
let video = ShareVideo(videoURL: assetURL)
let content = ShareVideoContent()
content.video = video

let dialog = MessageDialog(content: content, delegate: self)

// Recommended to validate before trying to display the dialog
do {
    try dialog.validate()
} catch {
    print(error)
}

dialog.show()

Android

المتطلبات الأساسية

اتبع التعليمات الواردة في المشاركة في نظام Android والملخصة أدناه:

يجب أيضًا التأكد من قيام تطبيقك باستدعاء MessageDialog.canshow({template}) لتحديد ما إذا كان لدى الأشخاص إصدار متوافق من Messenger مثبّت على أجهزتهم أم لا.