वेब व्यू एपीआई फ़ॉर ऐड्स, आपके
WebView में मौजूद टैग के लिए ऐप्लिकेशन के सिग्नल उपलब्ध करवाता है. इससे, कॉन्टेंट उपलब्ध कराने वाले
पब्लिशरों को ज़्यादा कमाई करने में मदद मिलती है और विज्ञापन देने वाले लोगों या कंपनियों को स्पैम से बचाया जा सकता है.
यह कैसे काम करता है
Google Mobile Ads SDK के साथ बातचीत सिर्फ़ तब होती है, जब इनमें से किसी वजह से विज्ञापन इवेंट ट्रिगर होते हैं:
एसडीके, रजिस्टर किए गए WebView में मैसेज हैंडलर जोड़ता है, ताकि इन विज्ञापन इवेंट के बारे में सुना जा सके. यह कैसे काम करता है, इसे बेहतर तरीके से समझने के लिए, टेस्ट पेज का
सोर्स कोड देखें.
ज़रूरी शर्तें
- Google Mobile Ads SDK वर्शन 20.6.0 या इसके बाद का वर्शन.
Android का एपीआई लेवल 21 या इसके बाद का वर्शन.
APPLICATION_IDकी जांच को बायपास करने के लिए, अपनीAndroidManifest.xmlफ़ाइल में यह<meta-data>टैग जोड़ें. अगर आपने यह चरण छोड़ दिया और उपलब्ध नहीं कराया, तो ऐप्लिकेशन शुरू होने पर, गड़बड़ी दिखाएगा.<meta-data>Google Mobile Ads SDKIllegalStateException<!-- Bypass APPLICATION_ID check for web view APIs for ads --> <meta-data android:name="com.google.android.gms.ads.INTEGRATION_MANAGER" android:value="webview"/>
वेब व्यू रजिस्टर करना
हर WebView इंस्टेंस में,
AdSense कोड या Google Publisher Tag में मौजूद JavaScript हैंडलर के साथ कनेक्शन बनाने के लिए, मुख्य थ्रेड पर Call
registerWebView()
को कॉल करें. यह काम जल्द से जल्द किया जाना चाहिए. जैसे, onCreate() तरीके में आपके MainActivity.
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)
// Let the web view accept third-party cookies.
CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
// Let the web view use JavaScript.
webView.settings.javaScriptEnabled = true
// Let the web view access local storage.
webView.settings.domStorageEnabled = true
// Let HTML videos play automatically.
webView.settings.mediaPlaybackRequiresUserGesture = false
// Register the web view.
MobileAds.registerWebView(webView)
}
}
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);
}
}
अपने इंटिग्रेशन की जांच करें
अपना यूआरएल इस्तेमाल करने से पहले, हमारा सुझाव है कि इंटिग्रेशन की जांच करने के लिए, यह यूआरएल लोड करें:
https://google.github.io/webview-ads/test/#api-for-ads-tests
अगर ये शर्तें पूरी होती हैं, तो टेस्ट यूआरएल पर, इंटिग्रेशन के सफल होने पर हरे रंग के स्टेटस बार दिखते हैं:
WebViewसे कनेक्ट होGoogle Mobile Ads SDK
अगले चरण
WebViewमें सहमति लेना. वेब व्यू एपीआई फ़ॉर ऐड्स, IAB TCF v2.0 या IAB CCPA कंप्लायंस फ़्रेमवर्क का इस्तेमाल करके, मोबाइल ऐप्लिकेशन के कॉन्टेक्स्ट में इकट्ठा की गई सहमति को, आपके वेब व्यू में मौजूद टैग तक नहीं पहुंचाता. अगर आपकोWebViewऔर उससे जुड़े, कमाई करने वाले वेब कॉन्टेंट, दोनों के मालिक के तौर पर, सहमति का एक ही फ़्लो लागू करना है, तोWebViewके कॉन्टेक्स्ट में सहमति इकट्ठा करने के लिए, अपने सहमति मैनेजमेंट प्लैटफ़ॉर्म के साथ काम करें.