إعداد عرض الويب

اختيار النظام الأساسي: Android (إصدار تجريبي) جديد Android iOS

إذا كان تطبيقك يستخدم WKWebView لعرض محتوى الويب، ننصحك بإعداده لتحقيق الربح من المحتوى على أفضل نحو باستخدام الإعلانات.

يوضِّح لك هذا الدليل كيفية تقديم معلومات عن كيفية إعداد عنصر WKWebView.

محتوى الوسائط

إنّ الإعدادات التلقائية لـ WKWebView غير محسّنة لعرض إعلانات الفيديو. استخدِم واجهات برمجة التطبيقات WKWebViewConfiguration لإعداد WKWebView لتشغيل الفيديو المضمّن وتشغيله تلقائيًا.

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

تحميل محتوى عرض الويب

تُعدّ ملفات تعريف الارتباط وعناوين URL للصفحات مهمة لتحقيق الربح من عرض الويب، ولا تعمل على النحو المتوقّع إلا عند استخدام load(_:) مع عنوان URL مستنِد إلى الشبكة. للحصول على أداء محسّن WKWebView، ننصحك بشدة بتحميل محتوى الويب من عنوان URL مستنِد إلى الشبكة.

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

اختبار عرض الويب

أثناء تطوير التطبيق، ننصحك بتحميل عنوان URL التجريبي هذا:

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

للتحقّق من أنّ هذه الإعدادات لها التأثير المقصود على الإعلانات. يحتوي عنوان URL التجريبي على معايير النجاح لعملية دمج كاملة إذا تمّت ملاحظة ما يلي:

إعدادات عرض الويب

  • تعمل ملفات تعريف الارتباط الخاصة بالطرف الأول
  • تم تفعيل JavaScript

إعلان فيديو

  • يتم تشغيل إعلان الفيديو بشكلٍ مضمّن ولا يتم فتحه في مشغّل ملء الشاشة المضمّن
  • يتم تشغيل إعلان الفيديو تلقائيًا بدون النقر على زر التشغيل
  • يمكن إعادة تشغيل إعلان الفيديو

بعد اكتمال الاختبار، استبدِل عنوان URL التجريبي بعنوان URL الذي ينوي عرض الويب تحميله.