iOS 14 पर काम करता है

iOS 14.5 के साथ, Apple ने डेवलपर के लिए यह ज़रूरी कर दिया है कि वे उपयोगकर्ताओं को ट्रैक करने या उनके डिवाइस के विज्ञापन के लिए आइडेंटिफ़ायर (आईडीएफ़ए) को ऐक्सेस करने के लिए, App Tracking Transparency फ़्रेमवर्क के ज़रिए उपयोगकर्ताओं की अनुमति लें. ज़्यादा जानकारी के लिए, Apple की उपयोगकर्ता की निजता और डेटा के इस्तेमाल और Apple की App Tracking Transparency से जुड़े दस्तावेज़ देखें.

इन Firebase प्रॉडक्ट पर असर पड़ा है

Firebase SDK टूल, IDFA को ऐक्सेस नहीं करते. हालांकि, कुछ SDK टूल Google Analytics के साथ इंटिग्रेट होते हैं, जो IDFA को ऐक्सेस कर सकते हैं.

नीचे दी गई टेबल में, Apple प्लैटफ़ॉर्म पर उपलब्ध Firebase प्रॉडक्ट की सूची दी गई है. साथ ही, यह भी बताया गया है कि आईडीएफ़ए को ऐक्सेस न कर पाने पर, हर प्रॉडक्ट की सुविधाओं पर क्या असर पड़ता है.

प्रॉडक्ट आईडीएफ़ए को ऐक्सेस न कर पाने का असर
A/B Testing Google Analytics के साथ A/B Testing के इंटिग्रेशन में, टारगेटिंग का कुछ डेटा (जैसे, डेमोग्राफ़िक्स) IDFA से लिया जाता है. जिन ऐप्लिकेशन के पास IDFA का ऐक्सेस नहीं है उनमें टारगेटिंग की यह सुविधा उपलब्ध नहीं है.
Firebase AI Logic 1 कोई असर नहीं पड़ा
App Check कोई असर नहीं पड़ा
App Distribution कोई असर नहीं पड़ा
Authentication Authentication और पहले पक्ष के Authentication प्रोवाइडर पर कोई असर नहीं पड़ेगा. जैसे, Google साइन-इन और फ़ोन नंबर की मदद से पुष्टि करने की सुविधा.
Cloud Firestore कोई असर नहीं पड़ा
Cloud Functions कोई असर नहीं पड़ा
Cloud Messaging Google Analytics के साथ इस्तेमाल किए जाने पर, Google Analytics FCM से जुड़े कुछ कन्वर्ज़न इवेंट को अपने-आप लॉग करेगा. इन इवेंट के एट्रिब्यूशन के लिए, आईडीएफ़ए का ऐक्सेस ज़रूरी है.
Cloud Storage कोई असर नहीं पड़ा
Crashlytics कोई असर नहीं. Google Analytics के साथ Crashlytics का इंटिग्रेशन, रीयल-टाइम क्रैश डेटा और ब्रेडक्रंब उपलब्ध कराता है. यह IDFA पर निर्भर नहीं है.
In-App Messaging कोई असर नहीं पड़ा
Firebase इंस्टॉलेशन कोई असर नहीं पड़ा
Performance Monitoring कोई असर नहीं पड़ा
Realtime Database कोई असर नहीं पड़ा
Remote Config Google Analytics के साथ इस्तेमाल किए जाने पर, Remote Config अपने-आप बनने वाली उपयोगकर्ता प्रॉपर्टी को आईडीएफ़ए ऐक्सेस के बिना टारगेट करने की अनुमति नहीं देता.
इस्तेमाल से बाहर हो चुकी या काम न करने वाली लाइब्रेरी
Dynamic Links लिंक खोलने की सुविधा पर कोई असर नहीं पड़ेगा. Google Analytics के साथ इस्तेमाल किए जाने पर, लिंक कन्वर्ज़न इवेंट के लिए एट्रिब्यूशन उपलब्ध नहीं होता.
InstanceID कोई असर नहीं पड़ा
Firebase ML कोई असर नहीं पड़ा

1 Firebase AI Logic को पहले "Vertex AI in Firebase" कहा जाता था.

ऐसे Firebase इंटिग्रेशन जिन पर इस समस्या का असर पड़ा है

नीचे दी गई टेबल में, Firebase के साथ इंटिग्रेट किए गए उन प्रॉडक्ट की सूची दी गई है जिन पर आईडीएफ़ए को ऐक्सेस न कर पाने की वजह से असर पड़ता है.

प्रॉडक्ट आईडीएफ़ए को ऐक्सेस न कर पाने का असर
Google Analytics Analytics गतिविधियों का ब्यौरा, इवेंट की रिपोर्ट, और कन्वर्ज़न मेज़रमेंट पर कोई असर नहीं पड़ता. हालांकि, अगर आईडीएफ़ए को ऐक्सेस नहीं किया जा सकता, तो एट्रिब्यूशन पर असर पड़ता है. iOS 14 के लिए Google के जवाब के बारे में ज़्यादा जानने के लिए, हमारी ब्लॉग पोस्ट देखें.

iOS 14 पर ऐप्लिकेशन ट्रैकिंग की अनुमति का अनुरोध करना

अगर आपको अपने Apple ऐप्लिकेशन को IDFA ऐक्सेस करने की अनुमति देनी है, तो अपने ऐप्लिकेशन में Apple का App Tracking Transparency फ़्रेमवर्क जोड़ें. इसके बाद, अपने उपयोगकर्ताओं के IDFA को ट्रैक या ऐक्सेस करने की अनुमति का अनुरोध करें.

कई ऐप्लिकेशन, अनुमति मांगने से पहले, ATT फ़्रेमवर्क का परिचय या जानकारी देने वाली स्क्रीन दिखाते हैं. जानकारी देने वाली स्क्रीन की मदद से, उपयोगकर्ताओं को यह समझने में आसानी होती है कि आपका ऐप्लिकेशन, ऐक्सेस का अनुरोध करने से पहले आईडीएफ़ए का इस्तेमाल कैसे करता है.

अगर आप AdMob या Ad Manager ऐप्लिकेशन पब्लिशर हैं, तो Funding Choices का इस्तेमाल करें. यह लोगों की दिलचस्पी के हिसाब से विज्ञापन दिखाने के लिए सहमति लेने के साथ-साथ, Apple के दिशा-निर्देशों के मुताबिक उपयोगकर्ता को ट्रैक करने के लिए सहमति लेने की प्रोसेस को अपने-आप मैनेज करता है. ज़्यादा जानकारी के लिए, AdMob उपयोगकर्ता को मैसेज भेजने की सुविधा के साथ सहमति पाने की सुविधा वाला पेज देखें.

इस गाइड में, Firebase In-App Messaging का इस्तेमाल करके, जानकारी देने वाली स्क्रीन बनाने और दिखाने का तरीका बताया गया है. यह स्क्रीन, App Tracking Transparency के ज़रिए ट्रैकिंग ऐक्सेस का अनुरोध करने से पहले दिखाई जाती है.

अपने ऐप्लिकेशन में In-App Messaging जोड़ें

In-App Messaging को अपने Apple ऐप्लिकेशन में जोड़ने के लिए, निर्देशों का पालन करें.

इन-ऐप्लिकेशन मैसेज को खारिज करने की सुविधा मैनेज करना

सबसे पहले, उन डिवाइसों पर जानकारी देने वाली स्क्रीन न दिखाएं जिन पर सहमति वाला डायलॉग बॉक्स नहीं दिखाया जा सकता. जैसे, iOS 13 पर चलने वाले डिवाइस. पक्का करें कि यह कोड 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 प्रोटोकॉल लागू करें. अगर उपयोगकर्ता 'ठीक है' पर टैप करता है, तो App Tracking Transparency फ़्रेमवर्क के ज़रिए सिस्टम प्रॉम्प्ट दिखाएं.

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 कंसोल में इन-ऐप्लिकेशन मैसेज बनाएं.

  1. Firebase कंसोल में, एक नया In-App Messaging कैंपेन बनाएं.
  2. इन-ऐप्लिकेशन मैसेज में अपनी पसंद का कॉन्टेंट भरें और मैसेज को app_launch इवेंट पर ट्रिगर होने के लिए सेट करें.
  3. टारगेटिंग सेक्शन में, पक्का करें कि कैंपेन सिर्फ़ आपके ऐप्लिकेशन के सबसे नए वर्शन और उसके बाद के वर्शन को टारगेट करता हो.

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.
  }
}

नया कन्वर्ज़न इवेंट बनाना

Firebase कंसोल के Analytics सेक्शन में, कन्वर्ज़न मेन्यू पर जाएं. इसके बाद, ऊपर दिए गए सैंपल कोड के साथ लॉग किए गए इवेंट के नाम से ही एक नया कन्वर्ज़न इवेंट जोड़ें.

एक नया प्रयोग बनाएं

कंसोल के In-App Messaging मेन्यू में, नया एक्सपेरिमेंट पर क्लिक करें. इसके बाद, स्क्रीन पर दिए गए निर्देशों का पालन करें.

  • टारगेटिंग सेक्शन में, पक्का करें कि कैंपेन सिर्फ़ आपके ऐप्लिकेशन के सबसे नए वर्शन और उसके बाद के वर्शन को टारगेट करता हो.
  • लक्ष्य सेक्शन में, ऊपर दिए गए सैंपल कोड की मदद से बनाया गया कन्वर्ज़न इवेंट चुनें. साथ ही, कोई अन्य मेट्रिक चुनें जिसे आपको ट्रैक करना है.

एक्सपेरिमेंट पब्लिश करने के बाद, सटीक नतीजे पाने के लिए कुछ समय तक डेटा इकट्ठा करना होगा.

किसी एक्सपेरिमेंट को मॉनिटर करने और उसके सफल वैरिएंट को रोल आउट करने के बारे में जानने के लिए, Firebase A/B Testing दस्तावेज़ पढ़ें.