في نظام iOS 14.5، تطلب Apple من المطوّرين الحصول على إذن المستخدم. من خلال إطار عمل "شفافية تتبّع التطبيقات" لتتبّعها أو الوصول إلى المعرِّف الإعلاني للجهاز (IDFA). عرض خصوصية المستخدم واستخدام البيانات في Apple أو شفافية تتبُّع التطبيقات من Apple للحصول على المزيد من التفاصيل.
منتجات Firebase المتأثّرة
ولا يمكن لحِزم تطوير البرامج (SDK) لمنصة Firebase الوصول إلى معرّف المعلِنين (IDFA)، على الرغم من أنّ بعضها يتضمّن عمليات دمج مع Google Analytics التي قد تتضمّن الوصول إلى معرّف المعلِنين (IDFA).
يسرد الجدول أدناه منتجات Firebase المتوفّرة على أنظمة Apple الأساسية. وتشرح كيفية تأثُّر وظائف كلّ منتج إذا لم يتمّ تحديد معرّف المعلِنين (IDFA) إليه على الفور.
Product | التأثير في حال تعذُّر الوصول إلى معرّف المعلِنين (IDFA) |
---|---|
A/B Testing | بعض بيانات الاستهداف (مثل الخصائص الديمغرافية) في عملية دمج A/B Testing التي تحدث مع Google Analytics هي من معرّف المعلِنين (IDFA). في التطبيقات التي لا تتضمّن بالوصول إلى معرّف المعلِنين (IDFA)، فإن هذا الاستهداف غير متاح. |
App Check | ليس هناك أي تأثير |
App Distribution | ليس هناك أي تأثير |
Authentication | ما مِن تأثير على مستوى Authentication ومقدّمي خدمة "Authentication" التابعين للطرف الأول. مثل تسجيل الدخول بحساب Google ومصادقة الهاتف. |
Crashlytics | ليس هناك أي تأثير. دمج "Crashlytics" مع "Google Analytics" توفّر مسارات التنقل وبيانات الأعطال في الوقت الفعلي لا تعتمد على معرّف المعلِنين (IDFA). |
Dynamic Links | ما مِن تأثير في وظائف فتح الروابط. عند الاستخدام مع Google Analytics، عملية تحديد المصدر لأحداث الإحالات الناجحة باستخدام الرابط هي غير متاح. |
Cloud Firestore | ليس هناك أي تأثير |
Cloud Functions | ليس هناك أي تأثير |
In-App Messaging | ليس هناك أي تأثير |
عمليتا تثبيت (Firebase) | ليس هناك أي تأثير |
رقم تعريف المثيل | ليس هناك أي تأثير |
Cloud Messaging | عند استخدام "Google Analytics" مع "Google Analytics"، سيكون تسجيل بعض أحداث الإحالات الناجحة ذات الصلة بـ FCM تلقائيًا. معلومات تحديد المصدر لهذه الأحداث تتطلب الوصول إلى معرّف المعلِنين (IDFA). |
Firebase ML | ليس هناك أي تأثير |
Performance Monitoring | ليس هناك أي تأثير |
Remote Config | عند استخدامه مع Google Analytics، لا يسمح النطاق Remote Config خصائص المستخدمين التي يتم إنشاؤها تلقائيًا للاستهداف بدون الوصول إلى معرّف المعلِنين (IDFA). |
Realtime Database | ليس هناك أي تأثير |
Cloud Storage | ليس هناك أي تأثير |
Vertex AI in Firebase | ليس هناك أي تأثير |
عمليات دمج Firebase المتأثّرة
يسرد الجدول أدناه المنتجات المتكاملة في Firebase التي ستتأثّر في حال كان معرّف المعلِنين (IDFA) لا يمكن الوصول إليه.
Product | التأثير في حال تعذُّر الوصول إلى معرّف المعلِنين (IDFA) |
---|---|
Google Analytics | تسجيل أحداث "Analytics" وإعداد تقارير الأحداث وقياس الإحالات الناجحة غير متأثرة بالمشكلة، ولكن ستتأثر عملية تحديد المصدر في حال تعذّر الوصول إلى معرّف المعلِنين (IDFA). لمزيد من المعلومات حول ردّ Google على الإصدار 14 من نظام التشغيل iOS، يمكنك الاطّلاع على مشاركة مدونة. |
طلب إذن تتبُّع التطبيقات على نظام التشغيل iOS 14
إذا أردت أن يتمكّن تطبيق Apple من الوصول إلى معرّف المعلِنين (IDFA)، يمكنك إضافة إطار عمل "شفافية تتبُّع التطبيقات" من Apple على تطبيقك وطلب الإذن لتتبُّع أنشطة المستخدمين معرّف المعلِنين (IDFA).
تختار العديد من التطبيقات تقديم شاشة إحماء أو شرح قبل يطلب الإذن. تتيح لك الشاشة التوضيحية منح المستخدمين المزيد من المعلومات سياق حول كيفية استخدام تطبيقك لمعرّف المعلِنين (IDFA) قبل طلب الوصول.
إذا كنت أحد ناشري التطبيقات في "AdMob" أو "مدير الإعلانات"، يمكنك استخدام خيارات التمويل, الذي يعالج الحصول على الموافقة لعرض الإعلانات المخصّصة أيضًا كموافقة على تتبُّع المستخدم تلقائيًا وفقًا لإرشادات Apple. يمكنك الاطّلاع على AdMob الموافقة على صفحة "رسائل المستخدم" لمزيد من التفاصيل.
يقدم الدليل التالي حلاً باستخدام Firebase In-App Messaging لإنشاء عرض شاشة توضيحية قبل طلب الوصول إلى التتبع عبر شفافية تتبُّع التطبيقات
إضافة "In-App Messaging" إلى تطبيقك
اتّبِع التعليمات إضافة In-App Messaging إلى تطبيق Apple
التعامل مع إغلاق الرسائل داخل التطبيق
أولاً، تجنَّب عرض الشاشة التوضيحية على الأجهزة التي لا يمكنها تقديم
مربّع إفادة الموافقة، مثل الأجهزة التي تعمل بالإصدار 13 من iOS تأكَّد من تنفيذ هذه التعليمة البرمجية.
بعد FirebaseApp.configure()
مباشرةً.
Swift
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
نفِّذ
InAppMessagingDisplayDelegate
للتعامل مع الأحداث عندما يغلق المستخدم الشاشة التوضيحية. إذا كانت
ينقر المستخدم على "حسنًا"، ويتم عرض طلب من النظام من خلال ميزة "شفافية تتبُّع التطبيقات".
إطار العمل.
Swift
// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self
func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
with action: InAppMessagingAction) {
switch action.actionText {
case "OK":
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
case _:
// do nothing
}
}
إنشاء حملة In-App Messaging
بعد وضع الرمز في تطبيقك، يمكنك إنشاء رسالة داخل التطبيق في وحدة تحكّم "Firebase"
- في وحدة تحكُّم Firebase، إنشاء حملة In-App Messaging جديدة
- عليك تعبئة الرسائل داخل التطبيق بالمحتوى المطلوب وضبط الرسالة.
سيتم تشغيله في حدث
app_launch
- في قسم الاستهداف، تأكد من أن الحملة لا تستهدف سوى أكبر عدد ممكن أحدث إصدار من تطبيقك أو الإصدارات الأحدث.
يمكنك تخصيص مظهر الشاشة التوضيحية من خلال اتّباع التعليمات الواردة في مستندات In-App Messaging
اختياري: اختبار A/B للشاشات التوضيحية المختلفة
تقدّم شركة In-App Messaging عملية تكامل مضمَّنة مع Firebase A/B Testing، التي يمكنك استخدامها لإجراء التجارب باستخدام شاشات توضيحية مختلفة.
ينشئ Firebase A/B Testing مجموعات تجربة تلقائيًا ويساعدك على ذلك تصور كيفية تفاعل المستخدمين مع المتغيرات المختلفة لتطبيقك.
تسجيل أذونات تتبع التطبيقات
في حال عدم تسجيل حدث Google Analytics عند معالجة تتبُّع التطبيق من أجل قياس التغييرات في معدل الاستجابة عند إجراء تجربة A/B.
Swift
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
إنشاء حدث إحالة ناجحة جديد
في جلسة المعمل، قسم Analytics من وحدة تحكُّم Firebase، انتقِل إلى قائمة الإحالات الناجحة، ثم أضِف عمودًا جديدًا حدث إحالة ناجحة بالاسم نفسه كحدث مسجَّل باستخدام نموذج الرمز أعلاه.
إنشاء تجربة جديدة
في وحدة التحكم قائمة In-App Messaging، انقر على تجربة جديدة، ثم اتّبع التعليمات في علامة الشاشات.
- في قسم الاستهداف، تأكد من أن الحملة لا تستهدف سوى أكبر عدد ممكن أحدث إصدار من تطبيقك أو الإصدارات الأحدث.
- في قسم الأهداف، اختَر حدث الإحالة الناجحة الذي أنشأته باستخدام نموذج الرمز أعلاه بالإضافة إلى أي مقاييس أخرى ترغب في تتبعها.
بعد نشر تجربتك، ستحتاج إلى جمع بيانات لبعض قبل أن تتمكن من التوصل إلى نتائج حاسمة.
اطّلِع على مستندات Firebase A/B Testing للحصول على معلومات حول كيفية مراقبة تجربة ما وطرح المتغير.