यदि इस लेख का शीर्षक आपके लिए कुछ मायने रखता है, तो आप शायद iOS14 के कारण आए भूकंप से अवगत हैं।
IOS14 की रिलीज के साथ, एप्लिकेशन के उपयोगकर्ता के बारे में जानकारी एकत्र करने के तरीके में बड़े बदलाव हुए हैं। उनमें से एक विज्ञापनदाताओं के लिए पहचानकर्ता (या आईडीएफए) से संबंधित है और एप्लिकेशन इसे कैसे एक्सेस कर सकते हैं।
लेकिन जो नहीं जानते हैं, उनके लिए आइए पहले समझाते हैं कि आईडीएफए क्या है और यह क्यों महत्वपूर्ण है।
आईडीएफए क्या है?
प्रत्येक iOS डिवाइस स्वामी यह तय कर सकता है कि वे विज्ञापन कंपनियों द्वारा ट्रैक किए जाना चाहते हैं या नहीं। यह उन कंपनियों को उस उपयोगकर्ता को उनके अनुरूप सामग्री (उनकी ऑनलाइन ब्राउज़िंग आदतों के आधार पर) की आपूर्ति करने की अनुमति देता है।
कंपनियां इसे आईडीएफए (विज्ञापनदाताओं के लिए पहचानकर्ता) के रूप में जाना जाता है। यह एक यूयूआईडी स्ट्रिंग है जो विज्ञापनदाताओं को उनके व्यवहार के साथ उपयोगकर्ता का मिलान करने देती है।
यहां UUID स्ट्रिंग का एक उदाहरण दिया गया है:123e4567-e89b-12d3-a456–426614174000।
तो, वे कौन से बदलाव हैं जिनके बारे में हमने पहले बात की थी?
संक्षेप में, अनुप्रयोगों को अब उपयोगकर्ता को एक संवाद दिखाने की आवश्यकता होगी, यह पूछते हुए कि क्या वे एप्लिकेशन को उन्हें ट्रैक करने की अनुमति देना चाहते हैं या नहीं।
बहुत अशुभ लग रहा है, है ना?
यह आईओएस14 से पहले कैसे काम करता था, इसके विपरीत है, जहां आपको केवल यह जांचना था कि डिवाइस में सीमित विज्ञापन ट्रैकिंग सक्षम या अक्षम है या नहीं।
Apple के ऑपरेटिंग सिस्टम (iOS14) का नवीनतम संस्करण पहले से ही उपलब्ध है (16 सितंबर से है)। IDFA का उपयोग करने वाले डेवलपर्स को iOS14 के अनुकूल होने के लिए अपने एप्लिकेशन में बदलाव करने होंगे।
3 सितंबर को, Apple ने एक अपडेट किया और इन अपडेट को पूरा करने की समय सीमा को अगले साल की शुरुआत तक बढ़ा दिया:
“डेवलपर्स को आवश्यक परिवर्तन करने का समय देने के लिए, ऐप्स को अगले साल की शुरुआत से उपयोगकर्ताओं को ट्रैक करने की अनुमति प्राप्त करने की आवश्यकता होगी”
अब जबकि हमारे पास अपने आप को फिर से ठीक करने और फिर से सांस लेने के लिए कुछ समय है, तो आइए 2021 में नया सामान्य होने के लिए खुद को तैयार करना शुरू करें।
इस लेख में, हम IDFA के बारे में कुछ पृष्ठभूमि प्रस्तुत करेंगे और देखेंगे कि हम iOS14 और उसके बाद से इसका मूल्य कैसे प्राप्त कर सकते हैं।
विज्ञापनदाताओं द्वारा आईडीएफए का उपयोग कैसे किया जाता है?
आइए एक परिदृश्य लें (पूर्व COIVD-19) जहां आप अपने iPhone पर वेब ब्राउज़ कर रहे हैं और अपनी अगली छुट्टी के लिए एक होटल की तलाश कर रहे हैं।
आपके द्वारा देखा जाने वाला प्रत्येक विज्ञापन आपके IDFA के साथ संलग्न एक पिक्सेल भेजेगा। एक विज्ञापनदाता यह देख सकता है कि आप अपने आईडीएफए से मेल करके होटलों का प्रचार करने वाले बहुत से विज्ञापन देख रहे हैं और यह निष्कर्ष निकाल सकते हैं कि आप होटल का कमरा बुक करना चाहते हैं।
वहां से, आपको होटल के कमरों के लिए बहुत सारे विज्ञापन दिखाए जाने में अधिक समय नहीं लगेगा।
यह सरल लेकिन गहन तकनीक 2012 में iOS6 के साथ हमारे जीवन में आई। तब से बहुत कुछ बदल गया है, और iOS14 उद्योग को फिर से उलट रहा है।
✋ नोट: इन नए API का उपयोग करने के लिए आपको XCode 12 को अपग्रेड/डाउनलोड करना होगा .
विज्ञापन ट्रैकिंग और आईडीएफए प्राप्त करना
IOS14 से पहले, IDFA प्राप्त करना बहुत आसान था।
ऐसा करके आपको यह जांचना होगा कि विज्ञापन ट्रैकिंग सक्षम थी या नहीं:
[[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]
और अगर इसे अक्षम कर दिया गया था, तो इसका मतलब है कि आप ASIdentifierManager वर्ग के माध्यम से IDFA प्राप्त कर सकते हैं, जैसे:
[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
काफी सरल है, है ना?
☝️ शुरुआत साथ iOS10, यदि उपयोगकर्ता ने विज्ञापन ट्रैकिंग अक्षम कर दी है, तो ऊपर दी गई विधि शून्य से भरी एक UUID स्ट्रिंग लौटाएगी।
IOS14 में हुए परिवर्तनों में से एक उस पद्धति का बहिष्करण है जो यह जांचता है कि विज्ञापनदाता ट्रैकिंग सक्षम है या नहीं। तो एप्लिकेशन iOS14 और उसके बाद से प्रतिष्ठित IDFA कैसे प्राप्त कर सकते हैं?
उन्हें एक नए एपीआई का उपयोग करना होगा जो उपयोगकर्ता को एक संवाद प्रस्तुत करता है। इस संवाद के बारे में ज्ञान के कुछ शब्द:
- इसे उपयोगकर्ता के सामने केवल एक बार प्रस्तुत किया जा सकता है
- केवल एक चीज जिसे डायलॉग के UI में बदला जा सकता है, वह है ट्रैकिंग की अनुमति दें विकल्प के ऊपर की दो पंक्तियाँ (“क्या आप ट्रैक किया जाना चाहते हैं?” )
इसका मतलब है कि डेवलपर्स को इस बारे में लंबा और कठिन सोचना होगा कि वे उपयोगकर्ता को संदेश कैसे और कब प्रस्तुत करेंगे।
प्राधिकरण स्थिति
IOS14 के साथ, ऐप ट्रैकिंग ट्रांसपेरेंसी नामक एक नया ढांचा बनाया गया है। इस ढांचे में ATTrackingManager नामक एक वर्ग है, जो निम्न को एक API प्रदान करता है:
- उपयोगकर्ता को ट्रैक करने की अनुमति का अनुरोध करते हुए एक संवाद प्रस्तुत करें
- प्राधिकरण स्थिति के बारे में पूछें (संवाद दिखाने या न दिखाने की परवाह किए बिना)
हम पहले सीखेंगे कि प्राधिकरण की स्थिति कैसे प्राप्त करें। ऐसा करने के लिए, आपको trackingAuthorizationStatus पर कॉल करना होगा विधि।
ATTrackingManagerAuthorizationStatus status = [ATTrackingManager trackingAuthorizationStatus];
यह निम्न में से किसी एक मान के साथ एक NSUInteger लौटाएगा:
- ATTrackingManagerAuthorizationStatusNotDetermined =0
- ATtrackingManagerAuthorizationStatusRestricted =1
- ATtrackingManagerAuthorizationStatusAuthorized =3
- ATtrackingManagerAuthorizationStatusअस्वीकार =2
पहले तीन परिणाम काफी आत्म-व्याख्यात्मक हैं, इसलिए हम अंतिम पर एक मिनट के लिए ध्यान केंद्रित करेंगे।
आप एक प्राधिकरण स्थिति प्राप्त कर सकते हैं जो तब प्रतिबंधित होती है जब विज्ञापन ट्रैकिंग को सक्षम/अक्षम करने के लिए स्क्रीन लॉक हो और यह विकल्प सक्षम पर सेट हो।
Apple ने इसे उन डिवाइसों में स्वीकार किया है जिनकी पहचान बच्चों के रूप में की गई है (उदाहरण के लिए)।
ट्रैक करने की अनुमति मांगना
संवाद प्रस्तुत करने के लिए आवश्यक कोड को देखने से पहले, आपको पहले NSUserTrackingUsageDescription शामिल करना होगा आपकी info.plist फ़ाइल के अंदर कुंजी।
इस कुंजी के मान के रूप में आप जो जोड़ते हैं, वह डायलॉग में पहले बताई गई दो पंक्तियों के रूप में दिखाई देगा।
संवाद प्रस्तुत करने के लिए, हमें requestTrackingAuthorizationWithCompletionHandler को कॉल करना होगा:
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
if (status == ATTrackingManagerAuthorizationStatusDenied) {
//Logic when authorization status is denied
} else if (status == ATTrackingManagerAuthorizationStatusAuthorized) {
//Logic when authorization status is authorized
} else if (status == ATTrackingManagerAuthorizationStatusNotDetermined) {
//Logic when authorization status is unknown
} else if (status == ATTrackingManagerAuthorizationStatusRestricted) {
//Logic when authorization status is restricted
}
}];
इस लेख की पहली तस्वीर में (जहां आप संवाद देखते हैं) आप देख सकते हैं कि हमने जो पंक्तियाँ info.plist फ़ाइल में लिखी हैं, वे संवाद में दो पंक्तियों के रूप में दिखाई देती हैं।
रैपिंग अप
अंत में, यह याद रखना महत्वपूर्ण है कि ये परिवर्तन, जबकि कठिन हैं, तुरंत नहीं हो रहे हैं।
आपको इस लेख में वर्णित सभी चरणों का पालन करना भी सुनिश्चित करना चाहिए ताकि आपके अनुप्रयोगों में क्रैश/त्रुटियों का सामना न करना पड़े।