Google Ads के लिए वेबव्यू एपीआई को इंटिग्रेट करना

विज्ञापनों के लिए वेब व्यू एपीआई, आपकेWebViewमें मौजूद टैग में ऐप्लिकेशन सिग्नल उपलब्ध कराता है. इससे उन पब्लिशर के लिए कमाई करने में मदद मिलती है जो कॉन्टेंट उपलब्ध कराते हैं और विज्ञापन देने वालों को स्पैम से बचाते हैं. ऐप्लिकेशन आईडी और ऐप्लिकेशन वर्शन जैसे इन ऐप्लिकेशन सिग्नल से, रिपोर्टिंग और इन-ऐप्लिकेशन ब्राउज़र इन्वेंट्री को टारगेट करने को चालू करने में मदद मिलती है. हालांकि, ये सिग्नल सिर्फ़ ऐप्लिकेशन ट्रैफ़िक के लिए ही उपलब्ध हैं.

यह कैसे काम करता है

Google Mobile Ads SDK से कम्यूनिकेशन सिर्फ़ तब होता है, जब विज्ञापन इवेंट इनमें से किसी एक से ट्रिगर होते हैं:

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

ज़रूरी शर्तें

  • Google Mobile Ads SDK वर्शन 20.6.0 या इसके बाद का वर्शन.
  • Android API (एपीआई) लेवल 21 या उसके बाद वाला लेवल.

  • APPLICATION_ID की जांच से बचने के लिए, अपनी AndroidManifest.xml फ़ाइल में यहां दिया गया <meta-data> टैग जोड़ें. अगर यह चरण छूट गया है और <meta-data> टैग नहीं दिया गया है, तो Google Mobile Ads SDK, ऐप्लिकेशन शुरू होने पर IllegalStateException दिखता है.

    <!-- Bypass APPLICATION_ID check for web view APIs for ads -->
     <meta-data
         android:name="com.google.android.gms.ads.INTEGRATION_MANAGER"
         android:value="webview"/>
    

वेब व्यू को रजिस्टर करें

registerWebView() मुख्य थ्रेड पर, AdSense कोड या Google पब्लिशर टैग में मौजूद JavaScript हैंडलर के साथ कनेक्शन बनाने के लिए, हर WebView इंस्टेंस को कॉल करें. इसे जल्द से जल्द कर लें, जैसे कि आपके व्यू कंट्रोलर के onCreate() तरीका.

Java

import android.webkit.CookieManager;
import android.webkit.WebView;
import com.google.android.gms.ads.MobileAds;

public class MainActivity extends AppCompatActivity {
  private WebView webView;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    webView = findViewById(R.id.webview);

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
    // Let the web view use JavaScript.
    webView.getSettings().setJavaScriptEnabled(true);
    // Let the web view access local storage.
    webView.getSettings().setDomStorageEnabled(true);
    // Let HTML videos play automatically.
    webView.getSettings().setMediaPlaybackRequiresUserGesture(false);

    // Register the web view.
    MobileAds.registerWebView(webView);
  }
}

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView
import com.google.android.gms.ads.MobileAds

class MainActivity : AppCompatActivity() {
  lateinit var webView: WebView

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    webView = findViewById(R.id.webview)

    // Enable third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
    // Enable JavaScript in the WebView.
    webView.settings.javaScriptEnabled = true
    // Enable DOM storage in the WebView.
    webView.settings.domStorageEnabled = true
    // Enable videos to play automatically.
    webView.settings.mediaPlaybackRequiresUserGesture = false

    // Register the web view.
    MobileAds.registerWebView(webView)
  }
}

अपने इंटिग्रेशन की जांच करना

हमारा सुझाव है कि इंटिग्रेशन की जांच करने के लिए, अपना यूआरएल इस्तेमाल करने से पहले यह यूआरएल लोड करें:

https://webview-api-for-ads-test.glitch.me#api-for-ads-tests

अगर नीचे दी गई शर्तें लागू होती हैं, तो टेस्ट यूआरएल पूरे इंटिग्रेशन के लिए हरे रंग के स्टेटस बार दिखाता है:

  • WebView Google Mobile Ads SDK से कनेक्ट किया गया

अगले चरण

  • WebViewमें सहमति लें. विज्ञापनों के लिए वेब व्यू एपीआई, मोबाइल ऐप्लिकेशन में इकट्ठा की गई सहमति को लागू नहीं करता. इसके लिए, IAB टीसीएफ़ के 2.0 वर्शन या IAB सीसीपीए के नियमों का पालन करने से जुड़े फ़्रेमवर्क का इस्तेमाल करके, वेब व्यू में मौजूद टैग को लागू किया जा सकता है. अगर आपकोWebView और इससे जुड़े वेब कॉन्टेंट से कमाई करने के मालिक के तौर पर, एक सिंगल सहमति फ़्लो लागू करना है, तो अपने सहमति मैनेजमेंट प्लैटफ़ॉर्म के साथ मिलकर काम करें, ताकि WebView context में सहमति ली जा सके.