iOS 14.5 के बाद वाले वर्शन पर, Apple ने डेवलपर के लिए यह ज़रूरी कर दिया है कि वे उपयोगकर्ताओं को ट्रैक करने या उनके डिवाइस के विज्ञापन के लिए आइडेंटिफ़ायर (आईडीएफ़ए) को ऐक्सेस करने के लिए, App Tracking Transparency फ़्रेमवर्क के ज़रिए उनकी अनुमति लें. ज़्यादा जानकारी के लिए, Apple की उपयोगकर्ता की निजता और डेटा के इस्तेमाल और Apple की App Tracking Transparency से जुड़े दस्तावेज़ देखें.
इससे आपको यह पता चलेगा कि आपके ऐप्लिकेशन के व्यवहार के लिए, उपयोगकर्ता को App Tracking Transparency प्रॉम्प्ट स्वीकार करना ज़रूरी है या नहीं.इन Firebase प्रॉडक्ट पर असर पड़ा है
Firebase SDK, IDFA को ऐक्सेस नहीं करते हैं. हालांकि, कुछ SDK, Google Analytics के साथ इंटिग्रेट होते हैं. इनमें IDFA को ऐक्सेस करने की सुविधा शामिल हो सकती है.
यहां दी गई टेबल में, Apple प्लैटफ़ॉर्म पर उपलब्ध Firebase प्रॉडक्ट की सूची दी गई है. साथ ही, इसमें यह भी बताया गया है कि अगर आईडीएफ़ए ऐक्सेस नहीं किया जा सकता, तो हर प्रॉडक्ट के काम करने के तरीके पर क्या असर पड़ता है.
| प्रॉडक्ट | आईडीएफ़ए ऐक्सेस न किए जा सकने पर असर |
|---|---|
| A/B Testing | A/B Testing को Google Analytics के साथ इंटिग्रेट करने पर, टारगेटिंग से जुड़ा कुछ डेटा (जैसे कि डेमोग्राफ़िक्स) आईडीएफ़ए से मिलता है. जिन ऐप्लिकेशन के पास IDFA का ऐक्सेस नहीं है उनमें टारगेटिंग की यह सुविधा उपलब्ध नहीं है. |
| Firebase AI Logic 1 | कोई असर नहीं पड़ा |
| App Check | कोई असर नहीं पड़ा |
| App Distribution | कोई असर नहीं पड़ा |
| Authentication | Authentication और पहले पक्ष के Authentication प्रोवाइडर, जैसे कि Google साइन-इन और फ़ोन से पुष्टि करने की सुविधा पर कोई असर नहीं पड़ता. |
| Cloud Firestore | कोई असर नहीं पड़ा |
| Cloud Functions | कोई असर नहीं पड़ा |
| Cloud Messaging | Google Analytics के साथ इस्तेमाल करने पर, Google Analytics, FCM से जुड़े कुछ कन्वर्ज़न इवेंट अपने-आप लॉग कर लेगा. इन इवेंट के एट्रिब्यूशन के लिए, IDFA का ऐक्सेस ज़रूरी है. |
| Cloud Storage | कोई असर नहीं पड़ा |
| Crashlytics | कोई असर नहीं पड़ा. Google Analytics के साथ Crashlytics इंटिग्रेशन, आईडीएफ़ए पर निर्भर नहीं करता. यह इंटिग्रेशन, क्रैश होने का रीयल-टाइम डेटा और ब्रेडक्रंब उपलब्ध कराता है. |
| 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 ऐप्लिकेशन को आईडीएफ़ए ऐक्सेस करने की अनुमति देनी है, तो अपने ऐप्लिकेशन में Apple का App Tracking Transparency फ़्रेमवर्क जोड़ें. इसके बाद, अपने उपयोगकर्ताओं के आईडीएफ़ए को ट्रैक करने या ऐक्सेस करने की अनुमति का अनुरोध करें.
कई ऐप्लिकेशन, अनुमति मांगने से पहले, एटीटी फ़्रेमवर्क का परिचय या जानकारी देने वाली स्क्रीन दिखाते हैं. जानकारी देने वाली स्क्रीन की मदद से, उपयोगकर्ताओं को यह समझने में आसानी होती है कि आपका ऐप्लिकेशन, आईडीएफ़ए का इस्तेमाल कैसे करता है. ऐसा, ऐक्सेस का अनुरोध करने से पहले किया जाता है.
अगर आप AdMob या Ad Manager ऐप्लिकेशन पब्लिशर हैं, तो Funding Choices का इस्तेमाल करें. यह लोगों की दिलचस्पी के हिसाब से विज्ञापन दिखाने के लिए सहमति लेने के साथ-साथ, Apple के दिशा-निर्देशों के मुताबिक उपयोगकर्ता को ट्रैक करने के लिए सहमति लेने की प्रोसेस को भी अपने-आप मैनेज करता है. ज़्यादा जानकारी के लिए, AdMob उपयोगकर्ता को दिखाए जाने वाले मैसेज के साथ सहमति लेने का पेज देखें.
नीचे दी गई गाइड में, Firebase In-App Messaging का इस्तेमाल करके, App Tracking Transparency के ज़रिए ट्रैकिंग का ऐक्सेस पाने का अनुरोध करने से पहले, जानकारी देने वाली स्क्रीन को बनाने और दिखाने का तरीका बताया गया है.
अपने ऐप्लिकेशन में In-App Messaging जोड़ना
अपने Apple ऐप्लिकेशन में In-App Messaging जोड़ने के लिए, निर्देशों का पालन करें.
इन-ऐप्लिकेशन मैसेज को खारिज करने की सुविधा को मैनेज करना
सबसे पहले, उन डिवाइसों पर जानकारी देने वाली स्क्रीन न दिखाएं जिन पर सहमति वाला डायलॉग नहीं दिखाया जा सकता. जैसे, 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 कंसोल में जाकर ऐप्लिकेशन में दिखने वाला मैसेज बनाएं.
- Firebase कंसोल में जाकर, एक नया In-App Messaging कैंपेन बनाएं.
- इन-ऐप्लिकेशन मैसेज में अपनी पसंद का कॉन्टेंट डालें. साथ ही, मैसेज को
app_launchइवेंट पर ट्रिगर होने के लिए सेट करें. - टारगेटिंग सेक्शन में जाकर, पक्का करें कि कैंपेन सिर्फ़ आपके ऐप्लिकेशन के सबसे नए वर्शन और उससे ऊपर के वर्शन को टारगेट करता हो.
In-App Messaging दस्तावेज़ में दिए गए निर्देशों का पालन करके, ब्यौरे वाली स्क्रीन की थीम को अपनी पसंद के मुताबिक बनाया जा सकता है.
ज़रूरी नहीं: जानकारी देने वाली अलग-अलग स्क्रीन का A/B टेस्ट करें
In-App Messaging में Firebase A/B Testing के साथ पहले से इंटिग्रेशन की सुविधा मौजूद है. इसका इस्तेमाल करके, अलग-अलग जानकारी देने वाली स्क्रीन के साथ एक्सपेरिमेंट किया जा सकता है.
Firebase A/B Testing, एक्सपेरिमेंट ग्रुप अपने-आप बनाता है. साथ ही, यह समझने में आपकी मदद करता है कि उपयोगकर्ता आपके ऐप्लिकेशन के अलग-अलग वैरिएंट के साथ कैसे इंटरैक्ट करते हैं.
ऐप्लिकेशन ट्रैकिंग की अनुमतियां रिकॉर्ड करना
अगर आपने ऐप्लिकेशन ट्रैकिंग की अनुमतियों से जुड़े जवाब को मैनेज करते समय Google Analytics इवेंट लॉग नहीं किया है, तो आपको ऐसा करना होगा. इससे, ए/बी एक्सपेरिमेंट चलाते समय जवाब की दर में हुए बदलावों का आकलन किया जा सकेगा.
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 दस्तावेज़ पढ़ें.