Wenn in Ihrer App Webinhalte über WKWebView
angezeigt werden, sollten Sie die Funktion so konfigurieren, dass Inhalte optimal mit Anzeigen monetarisiert werden können.
In diesem Leitfaden erfahren Sie, wie Sie Informationen zur Konfiguration eines WKWebView
-Objekts angeben.
Medieninhalte
Die Standardeinstellungen für WKWebView
sind nicht für Videoanzeigen optimiert. Verwenden Sie die WKWebViewConfiguration
APIs, um Ihre 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];
}
Webview-Inhalte laden
Cookies und Seiten-URLs sind wichtig für die Monetarisierung von Web-Ansichten 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://webview-api-for-ads-test.glitch.me") 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://webview-api-for-ads-test.glitch.me"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
}
Webansicht testen
Während der App-Entwicklung empfehlen wir, diese Test-URL zu laden:
https://webview-api-for-ads-test.glitch.me#webview-settings-tests
Prüfen Sie, ob diese Einstellungen die gewünschte Wirkung auf Anzeigen haben. Die Test-URL erfüllt die Erfolgskriterien für eine vollständige Integration, wenn Folgendes zutrifft:
Einstellungen für die Webansicht
- Funktionsweise von eigenen Cookies
- JavaScript aktiviert
Videoanzeige
- Die Videoanzeige wird Inline abgespielt und nicht im Vollbildmodus im integrierten Player geöffnet.
- Die Videoanzeige wird automatisch abgespielt, ohne dass auf die Wiedergabeschaltfläche geklickt werden muss.
- Die Videoanzeige kann wiederholt werden.
Ersetzen Sie nach Abschluss des Tests die Test-URL durch die URL, die in der Webansicht geladen werden soll.