Nếu ứng dụng của bạn sử dụng
để hiển thị nội dung trên web, bạn nên định cấu hình để nội dung có thể được kiếm tiền một cách tối ưu bằng quảng cáo.WKWebView
Hướng dẫn này trình bày cách cung cấp thông tin về cách định cấu hình đối tượng WKWebView.
Nội dung nghe nhìn
Chế độ cài đặt mặc định của WKWebView không được tối ưu hoá cho quảng cáo dạng video. Sử dụng API WKWebViewConfiguration để định cấu hình WKWebView cho tính năng phát tại chỗ và tự động phát video.
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];
}
Tải nội dung chế độ xem web
Cookie và URL trang rất quan trọng đối với việc kiếm tiền từ chế độ xem web và chỉ hoạt động như mong đợi khi
load(_:) được dùng với URL dựa trên mạng. Để tối ưu hoá hiệu suất của WKWebView, bạn nên tải nội dung trên web từ một URL dựa trên mạng.
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];
}
Kiểm thử chế độ xem web
Trong quá trình phát triển ứng dụng, bạn nên tải URL thử nghiệm này:
https://google.github.io/webview-ads/test/
để xác minh rằng các chế độ cài đặt này có hiệu quả như mong muốn đối với quảng cáo. URL thử nghiệm có tiêu chí thành công cho một quá trình tích hợp hoàn chỉnh nếu bạn thấy những điều sau:
Cài đặt chế độ xem web
- Cách hoạt động của cookie của bên thứ nhất
- Đã bật JavaScript
Quảng cáo dạng video
- Quảng cáo dạng video phát cùng dòng và không mở trong trình phát tích hợp toàn màn hình
- Quảng cáo dạng video tự động phát mà không cần nhấp vào nút phát
- Quảng cáo dạng video có thể phát lại
Sau khi hoàn tất quá trình kiểm thử, hãy thay thế URL kiểm thử bằng URL mà chế độ xem web dự định tải.