تكامل الإشعارات الغنية في iOS
بدءًا من نظام التشغيل iOS 10، يمكنك إرفاق صورة ثابتة أو متحركة أو حتى مقطع فيديو بإشعارات الدفع. سيتم عرضها مباشرة في الإشعار عندما يقوم المستخدم بالضغط بقوة عليها.
تفعيل هذه الوظيفة بسيط جدًا، ويتضمن القليل جدًا من البرمجة. هيا بنا نبدأ!
1. إنشاء ملحق خدمة الإشعارات (Notification Service Extension)
Anchor link toأولاً، قم بإنشاء ملحق خدمة الإشعارات (Notification Service Extension). يقوم هذا الملحق بتنزيل المحتوى الذي سيتم عرضه للمستخدم.
أضف هدفًا جديدًا إلى مشروعك (File -> New -> Target) وأنشئ Notification Service Extension.

2. كود ملحق خدمة الإشعارات (Notification Service Extension)
Anchor link toيقوم الكود بتنزيل المرفق واستدعاء معالج محتوى الإشعار.
فقط انسخ والصق هذا الكود في ملحقك.
import UserNotificationsimport PushwooshFramework
class NotificationService: UNNotificationServiceExtension {
var contentHandler: ((UNNotificationContent) -> Void)? var bestAttemptContent: UNMutableNotificationContent?
override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) { PWNotificationExtensionManager.shared().handle(request, contentHandler: contentHandler) }}#import "PWNotificationExtensionManager.h"
@interface NotificationService : UNNotificationServiceExtension
@end
@implementation NotificationService
- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler { [[PWNotificationExtensionManager sharedManager] handleNotificationRequest:request contentHandler:contentHandler];}
@end3. السماح بعناوين URL للمرفقات غير الآمنة
Anchor link toملحق خدمة الإشعارات (Notification Service Extension) هو ملف ثنائي منفصل وله ملف Info.plist خاص به.
أضف App Transport Security Settings مع تعيين علامة Allow Arbitrary Loads إلى true في ملف Info.plist الخاص بالملحق.
Info.plist:
<key>NSAppTransportSecurity</key><dict> <key>NSAllowsArbitraryLoads</key> <true/></dict>4. إرسال إشعار غني
Anchor link toلإرسال إشعار غني، ما عليك سوى تحديد عنوان URL للملف في حقل BANNER URL.

ووش! اضغط بقوة على الإشعار وبذلك تكون قد انتهيت!
شاركنا ملاحظاتك
Anchor link toتساعدنا ملاحظاتك على إنشاء تجربة أفضل، لذلك نود أن نسمع منك إذا واجهت أي مشاكل أثناء عملية تكامل SDK. إذا واجهت أي صعوبات، فلا تتردد في مشاركة أفكارك معنا عبر هذا النموذج.