ستساعدك الأمثلة التالية على تنفيذ رقم تعريف المثيل في برنامج iOS. تجدر الإشارة إلى أن هذه الأمثلة تستخدم نطاق GCM الذي يمكنك استخدامه لإدارة الرموز المميزة لعميل iOS في المراسلة عبر السحابة الإلكترونية من Firebase.
إعداد تبعيات CocoaPods
يستخدم رقم تعريف المثيل CocoaPods لتثبيت الملحقات وإدارتها. افتح نافذة طرفية وانتقل إلى موقع مشروع Xcode لتطبيقك. إذا لم تكن قد أنشأت ملف Podfile من قبل لتطبيقك، فأنشئ واحدًا الآن:
pod init
افتح Podfile الذي تم إنشاؤه لتطبيقك وأضِف ما يلي:
pod 'FirebaseInstanceId'
احفظ الملف وشغِّل:
pod install
يؤدي ذلك إلى إنشاء ملف .xcworkspace
لتطبيقك. استخدم هذا الملف لجميع
التطويرات المستقبلية في تطبيقك.
إنشاء رمز مميّز
يتطلّب إنشاء الرموز المميّزة رقم تعريف مشروع تمّ إنشاؤه من خلال Google Developers Console.
NSString *authorizedEntity = PROJECT_ID;
String *scope = kFIRInstanceIDScopeFirebaseMessaging;
NSDictionary *options = @{
@"apns_token" : <APNS Token data>,
// 1 if APNS sandbox token else 0
@"apns_sandbox" : @(1),
};
[[FIRInstanceID instanceID] tokenWithAuthorizedEntity:authorizedEntity
scope:scope
options:options
handler:
^(NSString * _Nullable token, NSError * _Nullable error) {
// ...
}];
إدارة الرموز المميّزة وأرقام تعريف المثيلات
يتيح لك رقم تعريف المثيل حذف الرموز المميّزة وإعادة تحميلها.
حذف الرموز المميّزة وأرقام تعريف المثيلات
NSString *authorizedEntity = PROJECT_ID; // Project ID
String *scope = kFIRInstanceIDScopeFirebaseMessaging;
FIRInstanceIDDeleteTokenHandler handler = ^void(NSError *error) {
if (error) {
// Failed to delete the token. Check error and do an exponential
// backoff to retry again.
} else {
// Successfully deleted the token.
}
};
[[FIRInstanceID instanceID]
deleteTokenWithAuthorizedEntity:authorizedEntity
scope:scope
handler:handler];
يمكنك أيضًا حذف رقم تعريف المثيل نفسه، وفي هذه الحالة في المرة التالية التي تطلب فيها
getInstance()
، ستحصل على رقم تعريف مثيل جديد:
[FIRInstanceID instanceID] deleteIDWithHandler:^(NSError *error) {
if error != nil {
NSLog(@"Error deleting instance ID: %@", error);
}
}];
إعادة تحميل الرموز المميّزة
قد تنشئ خدمة "رقم تعريف المثيل" رموزًا مميّزة أو تعيد إنشائها. وعند حدوث ذلك، سيتم إرسال إشعار. يمكنك الاستماع إلى هذا الإشعار من خلال إضافة
مراقب للإشعارات باسم kFIRInstanceIDTokenRefreshNotification
.
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(tokenRefreshNotification:)
name:kFIRInstanceIDTokenRefreshNotification object:nil];
يجب إنشاء هذا المراقب قبل إنشاء الرمز المميّز، على سبيل المثال،
قبل طلب [FIRApp configure]
. ويمكن استرداد أحدث رمز مميّز من خلال الاتصال بالرقم [[FIRInstanceID instanceID] token]
.
تجدر الإشارة إلى أنّه لملاحظة إنشاء الرموز المميّزة لخدمة "المراسلة عبر السحابة الإلكترونية"، يتوفّر مفوَّض محدَّد.