Webansicht einrichten

Plattform auswählen: Android (Beta) Neu Android iOS

Wenn Ihre App WKWebView verwendet, um Webinhalte anzuzeigen, sollten Sie sie so konfigurieren, dass Inhalte optimal mit Anzeigen monetarisiert werden können.

In diesem Leitfaden erfahren Sie, wie Sie Informationen zur Konfiguration eines WKWebView-Objekts bereitstellen.

Medieninhalte

Die Standardeinstellungen von WKWebView sind nicht für Videoanzeigen optimiert. Verwenden Sie die WKWebViewConfiguration APIs, um WKWebView für die Inline-Wiedergabe und die automatische Videowiedergabe zu konfigurieren.

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

Inhalte der Webansicht laden

Cookies und Seiten-URLs sind wichtig für die Monetarisierung von Webansichten und funktionieren nur wie erwartet, wenn load(_:) mit einer netzwerkbasierten URL verwendet wird. Für eine optimierte WKWebView Leistung empfehlen wir dringend, Webinhalte über eine netzwerkbasierte URL zu laden.

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

Webansicht testen

Während der App-Entwicklung empfehlen wir, diese Test-URL zu laden:

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

So können Sie prüfen, ob sich diese Einstellungen wie gewünscht auf Anzeigen auswirken. Die Test-URL enthält Erfolgskriterien für eine vollständige Integration, wenn Folgendes beachtet wird:

Einstellungen für die Webansicht

  • Eigene Cookies funktionieren
  • JavaScript ist aktiviert

Videoanzeige

  • Die Videoanzeige wird inline wiedergegeben und nicht im integrierten Vollbildplayer geöffnet.
  • Die Videoanzeige wird automatisch wiedergegeben, ohne dass Sie auf die Wiedergabeschaltfläche klicken müssen.
  • Die Videoanzeige kann wiedergegeben werden.

Nach Abschluss des Tests ersetzen Sie die Test-URL durch die URL, die in der Webansicht geladen werden soll.