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

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

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

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

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

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

  • Google Mobile Ads SDK वर्शन 9.6.0 या इसके बाद का वर्शन.
  • Info.plist फ़ाइल में, यहां दी गई कुंजी और स्ट्रिंग वैल्यू अपडेट करें. इससे, GADApplicationIdentifier वैल्यू के लिए, Google Mobile Ads SDK की उस जांच को बायपास कर दिया जाता है जो उन डेवलपर पर लागू होती है जो वेब व्यू के बाहर विज्ञापन दिखाते हैं. अगर इस चरण को पूरा करने के बाद, आपने GADApplicationIdentifier सबमिट नहीं किया, तो ऐप्लिकेशन शुरू होने पर, Google Mobile Ads SDK एक GADInvalidInitializationException दिखाता है.

    <!-- Indicate Google Mobile Ads SDK usage is only for web view APIs for ads -->
    <key>GADIntegrationManager</key>
    <string>webview</string>
    

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

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

Swift

import WebKit

class ViewController: UIViewController {

  var webView: WKWebView!

  override func viewDidLoad() {
    super.viewDidLoad()

    // Initialize a WKWebViewConfiguration object.
    let webViewConfiguration = WKWebViewConfiguration()
    // Let HTML videos with a "playsinline" attribute play inline.
    webViewConfiguration.allowsInlineMediaPlayback = true
    // Let HTML videos with an "autoplay" attribute play automatically.
    webViewConfiguration.mediaTypesRequiringUserActionForPlayback = []

    // Initialize the WKWebView with your WKWebViewConfiguration object.
    webView = WKWebView(frame: view.frame, configuration: webViewConfiguration)
    view.addSubview(webView)

    // Register the web view.
    GADMobileAds.sharedInstance().register(webView)
  }
}

Objective-C

@import WebKit;

#import "ViewController.h"

@interface ViewController ()

@property(nonatomic, strong) WKWebView *webView;

@end

@implementation ViewController

- (void)viewDidLoad {
  [super viewDidLoad];

  // Initialize a WKWebViewConfiguration object.
  WKWebViewConfiguration *webViewConfiguration = [[WKWebViewConfiguration alloc] init];
  // Let HTML videos with a "playsinline" attribute play inline.
  webViewConfiguration.allowsInlineMediaPlayback = YES;
  // Let HTML videos with an "autoplay" attribute play automatically.
  webViewConfiguration.mediaTypesRequiringUserActionForPlayback = WKAudiovisualMediaTypeNone;

  // Initialize the WKWebView with your WKWebViewConfiguration object.
  self.webView = [[WKWebView alloc] initWithFrame:self.view.frame configuration:webViewConfiguration];
  [self.view addSubview:self.webView];

  // Register the web view.
  [GADMobileAds.sharedInstance registerWebView:self.webView];
}

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

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

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

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

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

अगले चरण

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