اگر برنامه iOS شما ازWKWebView
برای نمایش محتوای وب استفاده میکند، توصیه میشود آن را به گونهای پیکربندی کنید که بتوان از محتوا بهطور بهینه با تبلیغات درآمد کسب کرد.
این راهنما به شما نشان می دهد که چگونه اطلاعاتی در مورد نحوه پیکربندی یک شیWKWebView
ارائه دهید.
تنظیمات وب
تنظیمات پیشفرض WKWebView
برای تبلیغات بهینه نشدهاند. از WKWebViewConfiguration
و WKWebView
API برای پیکربندی نمای وب خود برای منابع زیر استفاده کنید:
- پخش درون خطی
- پخش خودکار ویدئو
غیرمجاز کردن پیشنمایش پیوند
سریع
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)
// Links opened using link preview don't call web view delegates. Ensure
// delegates are always called on clicks by disabling link preview.
webView.allowsLinkPreviews = false
view.addSubview(webView)
}
}
هدف-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];
// Links opened using link preview don't call web view delegates. Ensure
// delegates are always called on clicks by disabling link preview.
self.webView.allowsLinkPreviews = NO;
[self.view addSubview:self.webView];
}
محتوای نمایش وب را بارگیری کنید
کوکیها و نشانیهای وب صفحه برای کسب درآمد از نمای وب مهم هستند و تنها زمانی که با URL مبتنی بر شبکه استفاده میشود مطابق انتظار عمل میکنند. برای عملکرد بهینه WKWebView
،ما قویاً توصیه می کنیم محتوای وب را از یک URL مبتنی بر شبکه بارگیری کنید.
سریع
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)
// Links opened using link preview don't call web view delegates. Ensure
// delegates are always called on clicks by disabling link preview.
webView.allowsLinkPreviews = false
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)
}
}
هدف-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];
// Links opened using link preview don't call web view delegates. Ensure
// delegates are always called on clicks by disabling link preview.
self.webView.allowsLinkPreviews = NO;
[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];
}
نمای وب را تست کنید
در طول توسعه برنامه، توصیه می کنیم این URL آزمایشی را بارگیری کنید:
https://webview-api-for-ads-test.glitch.me#webview-settings-tests
برای تأیید این تنظیمات تأثیر مورد نظر بر تبلیغات را دارند. URL آزمون دارای معیارهای موفقیت برای یکپارچگی کامل در صورت رعایت موارد زیر است:
تنظیمات نمایش وب
- کوکی های شخص اول کار می کنند
- جاوا اسکریپت فعال شد
تبلیغ ویدیویی
- تبلیغ ویدیویی به صورت درون خطی پخش می شود و در پخش کننده داخلی تمام صفحه باز نمی شود
- تبلیغ ویدیویی بدون کلیک بر روی دکمه پخش به صورت خودکار پخش می شود
- تبلیغ ویدیویی قابل پخش مجدد است
پس از اتمام آزمایش، URL آزمایشی را با URL که نمای وب قصد بارگیری آن را دارد جایگزین کنید.