Android पर नेटिव विज्ञापन

नेटिव विज्ञापन फ़ॉर्मैट की मदद से, पब्लिशर किसी उपयोगकर्ता को दिखाए जाने वाले विज्ञापन को पसंद के मुताबिक बना सकता है. SDK टूल से विज्ञापन फ़ेच करने के बाद, पब्लिशर इसकी मदद से विज्ञापन लेआउट बदल सकते हैं और ऐप्लिकेशन के यूज़र इंटरफ़ेस के साथ बेहतर ढंग से अलाइन करने के लिए विज्ञापन का रूप तैयार करें: रंग फ़िल्टर करने, टाइपोग्राफ़ी बदलने, और कस्टम ओवरले जोड़ने का विकल्प है. नेटिव विज्ञापनों की परफ़ॉर्मेंस या उपयोगकर्ता अनुभव को ऑप्टिमाइज़ करने के लिए, पब्लिशर अक्सर डिसप्ले की सीमाएं सेट करते हैं या वीडियो चलाने की प्रोसेस को SDK टूल पर ऑफ़लोड करते हैं. आख़िर में, पब्लिशर अपनी पसंद के मुताबिक़ विज्ञापन पर क्लिक लिसनर का इस्तेमाल करके, ऊपर की ओर स्वाइप करने जैसे अतिरिक्त इवेंट को मॉनिटर किया जाता है.

नेटिव विज्ञापन फ़ॉर्मैट के लिए पब्लिशर पर ज़्यादा भरोसे की ज़रूरत होती है, जबकि अन्य विज्ञापन फ़ॉर्मैट दिखाने के लिए ज़रूरी है. आम तौर पर, SDK टूल, नीति के उल्लंघनों का पता लगाना चाहते हैं. साथ ही, यह पुष्टि करना चाहते हैं कि पब्लिशर को दिया गया विज्ञापन कॉन्टेंट, उपयोगकर्ता को दिखाया गया है या नहीं.

SDK टूल के रनटाइम में बैनर विज्ञापन की सुविधा, SurfaceControlViewHost एपीआई. इससे SDK टूल, SDK टूल के रनटाइम प्रोसेस से उपयोगकर्ता इंटरफ़ेस के एलिमेंट दिखा सकता है. साथ ही, क्लाइंट ऐप्लिकेशन में बदलाव किए बिना ऐसा किया जा सकता है. यह पता करने के लिए कि SurfaceView Z के ऊपर या Z नीचे वाले मोड का इस्तेमाल करें जिस प्लैटफ़ॉर्म पर SDK टूल का यूज़र इंटरफ़ेस (यूआई) रेंडर किया गया है वह क्लाइंट की स्क्रीन से ऊपर है या नीचे ऐप्लिकेशन की विंडो पर क्लिक करें. जब किसी विज्ञापन को Z above मोड का इस्तेमाल करके रेंडर किया जाता है, तो SDK को उपयोगकर्ता इंटरैक्शन से MotionEvents मिलता है. हालांकि, क्लाइंट ऐप्लिकेशन व्यू, विज्ञापन के ऊपर नहीं दिखते. जब किसी विज्ञापन को Z नीचे मोड में रेंडर किया जाता है, तो ऐप्लिकेशन, विज्ञापन के ऊपर अपने व्यू दिखाता है, लेकिन उपयोगकर्ता से MotionEvents इंटरैक्शन के बाद ऐप्लिकेशन पर जाते हैं, न कि SDK टूल पर.

privacysandbox.ui Jetpack लाइब्रेरी का इस्तेमाल SDK टूल और प्रकाशक को यूज़र इंटरफ़ेस (यूआई) सत्र बनाने और बनाए रखने के लिए.

ऐप्लिकेशन के मालिकाना हक वाला विज्ञापन कंटेनर

हमने एक प्रोटोटाइप बनाया है, जिसमें SDK टूल को नेटिव विज्ञापन (इसमें ऐप्लिकेशन के ओवरले भी शामिल हैं) वाले सभी व्यू का मालिकाना हक दिया गया है. हमें पता चला है कि यह सुविधा काम की है, लेकिन इससे यूज़र इंटरफ़ेस (यूआई) पर कुछ पाबंदियां लगी हैं और SDK टूल के साथ इंटिग्रेशन की प्रक्रिया मुश्किल हो गई है. ज़्यादा व्यावहारिक अप्रोच का मतलब है कि ऐप्लिकेशन को सबसे ज़्यादा व्यू मिल सकें. SDK टूल अब भी कुछ यूज़र इंटरफ़ेस (यूआई) खुद दिखा सकता है. जैसे, privacysandbox.ui से SandboxedSdkView का इस्तेमाल करके विज्ञापन व्यू. इस तरीके से, आपको ऑडियंस की निजता की सुरक्षा के लिए इस विज्ञापन फ़ॉर्मैट के लिए, मौजूदा और आने वाले समय में इस्तेमाल के उदाहरण दिए जा सकते हैं: इसके साथ तरीका है, तो ऐप्लिकेशन डेवलपर को विज्ञापन के कॉम्पोनेंट को इधर-उधर ले जाने और उनकी स्टाइल ऐसी रखने का विकल्प मिलता है ज़रूरी है, जबकि पसंदीदा वीडियो प्लेयर का मालिकाना हक SDK टूल के पास ही रहता है, और मीडिया कंट्रोल का ऐक्सेस बनाए रखता है.

डायग्राम, जिसमें दिखाया गया है कि पब्लिशर और SDK के बीच डेटा कैसे फ़्लो करता है.
नेटिव विज्ञापनों के लिए सुझाया गया कंट्रोल फ़्लो.

विज्ञापन की स्थिति के बारे में सूचनाएं

धोखाधड़ी का पता लगाने के लिए, अलग-अलग SDK टूल विज्ञापन व्यू की अलग-अलग प्रॉपर्टी का इस्तेमाल करते हैं और नीति उल्लंघन. हम यह बताए बिना इसका समर्थन करना चाहते हैं कि प्रॉपर्टी का इस्तेमाल करना है या SDK टूल के सेट को बदलने में रुकावट बन जाना क्वेरी की गई प्रॉपर्टी. हमारा सुझाव है कि NativeAdContainerInfo का इस्तेमाल करके, विज्ञापन कंटेनर और उसके चाइल्ड व्यू को दिखाया जाए. इसे पार्स किया जा सकता है ऑब्जेक्ट, जिसमें कई गेटर, विज्ञापन कंटेनर तक सीमित जानकारी दिखाते हैं और जहां इस तरह की जानकारी निजता बनाए रखने वाली हो और कंप्यूट का इस्तेमाल करके भी बनाए जा सकते हैं. SDK टूल, इसमें शामिल सिग्नल की कैटगरी में ऑप्ट इन कर पाएगा NativeAdContainerInfo. जब भी विज्ञापन की स्थिति, SDK के हिसाब से बदलती है, तो SDK को यह ऑब्जेक्ट मिलता है. जैसे, विज्ञापन इंप्रेशन और उपयोगकर्ता क्लिक जैसे बिलिंग वाले इवेंट.`

इसके अलावा, पब्लिशर NativeAdContainer में जोड़े गए हर बच्चे के लिए, व्यू के हिसाब से टैग (स्ट्रिंग) जोड़ सकता है. इनका इस्तेमाल करके, SDK टूल को यह जानकारी दी जा सकती है कि हर बच्चा किस विज्ञापन एसेट से जुड़ा है.

जब उपयोगकर्ता, SDK टूल के मालिकाना हक वाले व्यू पर क्लिक करता है, तो यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी, MotionEvent को SDK टूल के कोऑर्डिनेट स्पेस में बदली गई प्रॉपर्टी के साथ, ओरिजनल MotionEvent के साथ SDK टूल को भेज देगी. Android के आने वाले वर्शन के लिए, हम ऐसे तरीके ढूंढ रहे हैं जिनसे क्लाइंट ऐप्लिकेशन, इस नेटिव विज्ञापन के SDK टूल के मालिकाना हक वाले हिस्सों पर, उपयोगकर्ता के सभी जेस्चर के लिए टच फ़ोकस को ट्रांसफ़र कर सके. इससे SDK टूल, इन हिस्सों को मैनेज कर पाएगा.

प्रमाणित करना

विज्ञापन दिखाने के बारे में ज़्यादा भरोसा दिलाने के लिए, SDK टूल के लिए ये पुष्टिएं उपलब्ध होंगी:

  1. डिवाइस के लिए पूरी सुरक्षा देने की सुविधा: कुंजी जैसे प्लैटफ़ॉर्म एपीआई इस्तेमाल करें डिवाइस इंटिग्रिटी का पता लगाने के लिए, प्रमाणित किया जा रहा है.
  2. APK आइडेंटिटी: SdkSandbox एपीआई का इस्तेमाल करें, जैसे कि SdkSandboxController.getClientPackageName और PackageManager एपीआई जैसे कि requestChecksum APK की पहचान की पुष्टि करने के लिए.
  3. VerifiedMotionEvents: Android के आने वाले वर्शन पर, हम इससे सभी उपयोगकर्ताओं के लिए, टच फ़ोकस ट्रांसफ़र करने के लिए क्लाइंट ऐप्लिकेशन चालू हो जाएगा इस नेटिव विज्ञापन के SDK टूल के मालिकाना हक वाले हिस्सों पर हाथ के जेस्चर का इस्तेमाल करेगा. सिस्टम एपीआई का इस्तेमाल करके, MotionEvents को VerifiedMotionEvents में बदला जा सकता है. उपयोगकर्ता के इंटरैक्शन के जवाब में, SDK टूल अपना यूज़र इंटरफ़ेस (यूआई) दिखा सकता है. हालांकि, ऐसा तब ही होगा, जब वे चुनें.

खुले सवाल

हम नीचे दिए गए बिंदुओं पर सुझाव चाहते हैं:

  1. क्या SDK टूल के लिए, खुद VerifiedMotionEvents जनरेट करना सही रहेगा, या SDK टूल के लिए, सेवा देने वाली कंपनी की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के लिए ऐसा करना होगा?
  2. क्या SDK टूल के लिए, पब्लिशर को वीडियो वाले व्यू का मालिकाना हक देना बेहतर है या खुद के पास रखना?
  3. आपको इसमें किन प्रॉपर्टी को शामिल करना है AppOwnedAdContainerInfo ऑब्जेक्ट है?
  4. आपको SDK टूल के मालिकाना हक वाले कितने विज्ञापन या विज्ञापन कॉम्पोनेंट दिखाए जाने की उम्मीद है स्क्रीन पर समय?