नेटिव विज्ञापन फ़ॉर्मैट की मदद से, पब्लिशर किसी उपयोगकर्ता को दिखाए जाने वाले विज्ञापन को पसंद के मुताबिक बना सकता है. SDK टूल से विज्ञापन फ़ेच करने के बाद, पब्लिशर ऐप्लिकेशन के यूज़र इंटरफ़ेस के साथ बेहतर तरीके से अलाइन करने के लिए, विज्ञापन का लेआउट और लुक बदल सकते हैं. इसके लिए, रंग फ़िल्टर जोड़ना, टाइपोग्राफ़ी बदलना, और कस्टम ओवरले जोड़ना शामिल है. नेटिव विज्ञापनों की परफ़ॉर्मेंस या उपयोगकर्ता अनुभव को ऑप्टिमाइज़ करने के लिए, पब्लिशर अक्सर डिसप्ले की सीमाएं सेट करते हैं या वीडियो चलाने की प्रोसेस को SDK टूल पर ऑफ़लोड करते हैं. आखिर में, पब्लिशर विज्ञापन पर क्लिक करने वाले लिसनर को पसंद के मुताबिक बना सकते हैं, ताकि वे ऊपर की ओर स्वाइप करने जैसे अन्य इवेंट को मॉनिटर कर सकें.
नेटिव विज्ञापन फ़ॉर्मैट के लिए, पब्लिशर पर ज़्यादा भरोसा करना ज़रूरी होता है. ऐसा अन्य विज्ञापन फ़ॉर्मैट दिखाने के लिए ज़रूरी नहीं होता. आम तौर पर, SDK टूल, नीति के उल्लंघनों का पता लगाना चाहते हैं. साथ ही, यह पुष्टि करना चाहते हैं कि पब्लिशर को दिया गया विज्ञापन कॉन्टेंट, उपयोगकर्ता को दिखाया गया है या नहीं.
SDK टूल के रनटाइम में बैनर विज्ञापन दिखाने की सुविधा,
SurfaceControlViewHost
API की मदद से मिलती है. इससे SDK टूल, SDK टूल के रनटाइम प्रोसेस से उपयोगकर्ता इंटरफ़ेस के एलिमेंट दिखा सकता है. साथ ही, क्लाइंट ऐप्लिकेशन से उसमें छेड़छाड़ नहीं की जा सकती. SurfaceView Z ऊपर या Z नीचे मोड का इस्तेमाल करके यह तय करें कि SDK टूल का यूज़र इंटरफ़ेस (यूआई) जिस प्लैटफ़ॉर्म पर रेंडर किया गया है वह क्लाइंट ऐप्लिकेशन की विंडो के ऊपर है या नीचे. जब किसी विज्ञापन को Z above मोड का इस्तेमाल करके रेंडर किया जाता है, तो एसडीके को उपयोगकर्ता इंटरैक्शन से MotionEvents
मिलता है. हालांकि, क्लाइंट ऐप्लिकेशन व्यू, विज्ञापन के ऊपर नहीं दिखते. जब कोई विज्ञापन Z below मोड में रेंडर किया जाता है, तो ऐप्लिकेशन, विज्ञापन के ऊपर अपने व्यू दिखाता है. हालांकि, विज्ञापन पर उपयोगकर्ता के इंटरैक्शन से मिलने वाले MotionEvents
, SDK टूल के बजाय ऐप्लिकेशन पर जाते हैं.
SDK टूल और पब्लिशर, privacysandbox.ui Jetpack लाइब्रेरी का इस्तेमाल करके, यूज़र इंटरफ़ेस (यूआई) सेशन को सेट अप और मैनेज कर सकते हैं.
ऐप्लिकेशन के मालिकाना हक वाला विज्ञापन कंटेनर
हमने एक प्रोटोटाइप बनाया है, जिसमें SDK टूल को नेटिव विज्ञापन (इसमें ऐप्लिकेशन के ओवरले भी शामिल हैं) वाले सभी व्यू का मालिकाना हक दिया गया है. हमें पता चला है कि यह संभव है, लेकिन इससे यूज़र इंटरफ़ेस (यूआई) पर कुछ पाबंदियां लगी हैं और SDK टूल के साथ इंटिग्रेशन की प्रोसेस मुश्किल हो गई है. ज़्यादा व्यू पाने के लिए, ऐप्लिकेशन को ज़्यादा से ज़्यादा व्यू देने का तरीका अपनाएं. SDK टूल अब भी कुछ यूज़र इंटरफ़ेस (यूआई) खुद दिखा सकता है. जैसे, privacysandbox.ui से SandboxedSdkView
का इस्तेमाल करके विज्ञापन व्यू. इस तरीके से, इस विज्ञापन फ़ॉर्मैट के मौजूदा और आने वाले समय में इस्तेमाल के उदाहरणों को सबसे आसानी से इस्तेमाल किया जा सकता है: इस तरीके से, ऐप्लिकेशन डेवलपर के पास विज्ञापन कॉम्पोनेंट को इधर-उधर ले जाने और ज़रूरत के हिसाब से उन्हें स्टाइल करने का विकल्प होता है. साथ ही, अगर डेवलपर चाहे, तो SDK टूल के पास वीडियो प्लेयर का मालिकाना हक और मीडिया कंट्रोल का ऐक्सेस बना रहता है.
विज्ञापन की स्थिति के बारे में सूचनाएं
अलग-अलग SDK टूल, धोखाधड़ी का पता लगाने और नीति के उल्लंघनों के लिए, विज्ञापन व्यू की अलग-अलग प्रॉपर्टी देखते हैं. हम इस सुविधा को बिना किसी शर्त के उपलब्ध कराना चाहते हैं. इसका मतलब है कि हम यह नहीं बताएंगे कि किन प्रॉपर्टी का इस्तेमाल करना है. इसके अलावा, हम SDK के लिए, क्वेरी की गई प्रॉपर्टी के सेट में बदलाव नहीं करेंगे. हमारा सुझाव है कि NativeAdContainerInfo
का इस्तेमाल करके, विज्ञापन कंटेनर और उसके चाइल्ड व्यू को दिखाया जाए. यह एक ऐसा ऑब्जेक्ट होगा जिसे पार्सल किया जा सकता है. इसमें विज्ञापन कंटेनर और उसके कॉन्टेंट से जुड़ी जानकारी को अलग-अलग गेट्टर से दिखाया जाएगा. यह जानकारी निजता की सुरक्षा के लिहाज़ से सुरक्षित होती है और इसे कैलकुलेट करना महंगा नहीं होता. एसडीके टूल, NativeAdContainerInfo
में शामिल सिग्नल की कैटगरी के लिए ऑप्ट इन कर पाएगा. जब भी विज्ञापन की स्थिति, SDK के हिसाब से बदलती है, तो SDK को यह ऑब्जेक्ट मिलता है. जैसे, विज्ञापन इंप्रेशन और उपयोगकर्ता क्लिक जैसे बिलिंग वाले इवेंट.`
इसके अलावा, पब्लिशर NativeAdContainer
में जोड़े गए हर बच्चे के लिए, व्यू के हिसाब से टैग (स्ट्रिंग) जोड़ सकता है. इनका इस्तेमाल करके, SDK टूल को यह जानकारी दी जा सकती है कि हर बच्चा किस विज्ञापन एसेट से जुड़ा है.
जब उपयोगकर्ता, SDK टूल के मालिकाना हक वाले व्यू पर क्लिक करता है, तो यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी, MotionEvent
को SDK टूल के कोऑर्डिनेट स्पेस में बदली गई प्रॉपर्टी के साथ, ओरिजनल MotionEvent के साथ SDK टूल को भेज देगी. Android के आने वाले वर्शन के लिए, हम ऐसे तरीके ढूंढ रहे हैं जिनसे क्लाइंट ऐप्लिकेशन, इस नेटिव विज्ञापन के SDK टूल के मालिकाना हक वाले हिस्सों पर, उपयोगकर्ता के सभी जेस्चर के लिए टच फ़ोकस को ट्रांसफ़र कर सके. इससे SDK टूल, इन हिस्सों को मैनेज कर पाएगा.
प्रमाणित करना
विज्ञापन दिखाने के बारे में ज़्यादा भरोसा दिलाने के लिए, SDK टूल के लिए ये पुष्टि करने की प्रक्रिया उपलब्ध होंगी:
- डिवाइस की सुरक्षा की पुष्टि: डिवाइस की सुरक्षा की पुष्टि करने के लिए, कुंजी की पुष्टि जैसे प्लैटफ़ॉर्म एपीआई का इस्तेमाल करें.
- APK की पहचान: APK की पहचान की पुष्टि करने के लिए,
SdkSandboxController.getClientPackageName
जैसे SdkSandbox API औरrequestChecksum
जैसे PackageManager API का इस्तेमाल करें. VerifiedMotionEvents
: हम Android के आने वाले वर्शन में, क्लाइंट ऐप्लिकेशन को इस नेटिव विज्ञापन के उन हिस्सों पर उपयोगकर्ता के सभी जेस्चर के लिए टच फ़ोकस ट्रांसफ़र करने की सुविधा देने की कोशिश कर रहे हैं जिन पर एसडीके टूल का मालिकाना हक है. इससे, एसडीके टूल इन हिस्सों को मैनेज कर पाएगा. सिस्टम एपीआई का इस्तेमाल करके,MotionEvents
कोVerifiedMotionEvents
में बदला जा सकता है. SDK टूल, उपयोगकर्ता के इंटरैक्शन के जवाब में अपना यूज़र इंटरफ़ेस (यूआई) दिखा सकता है. हालांकि, ऐसा करना ज़रूरी नहीं है.
सवाल पूछे जा सकते हैं
- क्या SDK टूल को खुद
VerifiedMotionEvents
जनरेट करना चाहिए या सेवा देने वाली कंपनी की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी को ऐसा करना चाहिए? - क्या SDK टूल के लिए, पब्लिशर को वीडियो वाले व्यू का मालिकाना हक देना बेहतर है या खुद के पास रखना?
- आपको
AppOwnedAdContainerInfo
ऑब्जेक्ट में कौनसी प्रॉपर्टी शामिल करनी हैं? - आपको स्क्रीन पर एक ही समय पर, SDK के मालिकाना हक वाले कितने विज्ञापन या विज्ञापन कॉम्पोनेंट दिखाने हैं?