विज्ञापनों के लिए वेब व्यू एपीआई, आपके 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 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()
हर WebView
इंस्टेंस में AdSense कोड या Google पब्लिशर टैग में JavaScript हैंडलर से कनेक्शन बनाने के लिए, मुख्य थ्रेड पर. यह काम
जल्द से जल्द पूरा किया जाना चाहिए. जैसे, MainActivity
के onCreate()
तरीके में.
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 टीसीएफ़ के 2.0 वर्शन या IAB CCPA के अनुपालन फ़्रेमवर्क का इस्तेमाल करके, मोबाइल ऐप्लिकेशन के कॉन्टेक्स्ट में इकट्ठा की गई सहमति को आपके वेब व्यू में मौजूद टैग तक नहीं पहुंचाते हैं. अगर आपकोWebView
और उससे जुड़े वेब कॉन्टेंट, दोनों के मालिक के तौर पर सहमति लेने का एक ही तरीका लागू करना है, तो सहमति लेने के लिए इस्तेमाल किए जाने वाले प्लैटफ़ॉर्म के साथ मिलकर काम करें. इससेWebView
के संदर्भ में सहमति ली जा सकेगी.