WKWebView सेट अप करें

अगर आपका ऐप्लिकेशन, वेब कॉन्टेंट दिखाने के लिए WKWebView का इस्तेमाल करता है, तो हमारा सुझाव है कि आप इसे इस तरह कॉन्फ़िगर करें कि विज्ञापनों से कॉन्टेंट को ज़्यादा से ज़्यादा कमाई करने के लिए ऑप्टिमाइज़ किया जा सके.

इस गाइड में, WKWebView ऑब्जेक्ट को कॉन्फ़िगर करने के तरीके के बारे में जानकारी देने का तरीका बताया गया है.

मीडिया कॉन्टेंट

डिफ़ॉल्ट WKWebView सेटिंग, वीडियो विज्ञापनों के लिए ऑप्टिमाइज़ नहीं की जाती हैं. इनलाइन प्लेबैक और वीडियो अपने-आप चलने की सुविधा के लिए, WKWebView को कॉन्फ़िगर करने के लिए, WKWebViewConfiguration एपीआई का इस्तेमाल करें.

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)
  }
}

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];
}

वेब व्यू का कॉन्टेंट लोड करना

वेब व्यू से कमाई करने के लिए, कुकी और पेज के यूआरएल ज़रूरी होते हैं. ये सिर्फ़ तब ठीक से काम करते हैं, जब load(_:) का इस्तेमाल नेटवर्क पर आधारित यूआरएल के साथ किया जाता है. बेहतर WKWebView परफ़ॉर्मेंस के लिए, हमारा सुझाव है कि नेटवर्क पर आधारित यूआरएल से वेब कॉन्टेंट लोड करें.

Swift

import WebKit

var webview: WKWebview!

class ViewController: UIViewController {
  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)

    // Load the URL for optimized web view performance.
    guard let url = URL(string: "https://google.github.io/webview-ads/test/") else { return }
    let request = URLRequest(url: url)
    webView.load(request)
  }
}

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];

  // Load the URL for optimized web view performance.
  NSURL *url = [NSURL URLWithString:@"https://google.github.io/webview-ads/test/"];
  NSURLRequest *request = [NSURLRequest requestWithURL:url];
  [webView loadRequest:request];
}

वेब व्यू की जांच करना

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

https://google.github.io/webview-ads/test/

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

वेब व्यू की सेटिंग

  • पहले-पक्ष की कुकी काम करती हैं
  • JavaScript चालू है

वीडियो विज्ञापन

  • वीडियो विज्ञापन, इनलाइन तरीके से चलता है और यह फ़ुल स्क्रीन वाले बिल्ट-इन प्लेयर में नहीं खुलता
  • वीडियो विज्ञापन, 'चलाएं' बटन पर क्लिक किए बिना अपने-आप चलता है
  • वीडियो विज्ञापन को फिर से चलाया जा सकता है

टेस्टिंग पूरी होने के बाद, टेस्ट यूआरएल को उस यूआरएल से बदलें जिसे वेब व्यू लोड करना चाहता है.