Reklamlar için WebView API'yi entegre etme

Reklamlara ilişkin web görünümü API'leri, uygulama sinyallerini WKWebView, yayıncıları spam'den korur.

İşleyiş şekli

Google Mobile Ads SDK'sı ile iletişim yalnızca reklama yanıt olarak gerçekleşir aşağıdakilerden herhangi biri tarafından tetiklenen etkinlikler:

SDK, mevcut müşterilerinize mesaj işleyicileri ve WKWebView ve bu reklam etkinliklerini izleyin. Daha iyi daha fazla bilgi edinmek için web sitesinin kaynak koduna bakın. test sayfası.

.

Ön koşullar

  • Google Mobile Ads SDK'sı sürümü 9.6.0 veya üzeri.
  • Info.plist dosyasını aşağıdaki anahtar ve dize değeriyle güncelleyin. Bu Google Mobile Ads SDK'sının Reklamları uygulayan geliştiriciler için geçerli GADApplicationIdentifier değeri bir web görünümünün dışına çıkar. Bu adımı atlar ve bir e-posta adresi paylaşmazsanız GADApplicationIdentifier, Google Mobile Ads SDK'sı bir Uygulama başlangıcında GADInvalidInitializationException.

    <!-- Indicate Google Mobile Ads SDK usage is only for web view APIs for ads -->
    <key>GADIntegrationManager</key>
    <string>webview</string>
    

Web görünümünü kaydetme

Telefonla arama . register(_:) ana iş parçacığındaki JavaScript işleyicileriyle AdSense kodu veya Google Yayıncı Etiketi her WKWebView örnekte. Bu mümkün olduğunca erken yapılmalıdır (örneğin, . Görüntüleme denetleyicinizin viewDidLoad yöntemi.

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)

    // Register the web view.
    GADMobileAds.sharedInstance().register(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];

  // Register the web view.
  [GADMobileAds.sharedInstance registerWebView:self.webView];
}

Entegrasyonunuzu test etme

Kendi URL'nizi kullanmadan önce, test amacıyla aşağıdaki URL'yi yüklemenizi öneririz: entegrasyon:

https://webview-api-for-ads-test.glitch.me#api-for-ads-tests

Başarılı bir entegrasyon için test URL'si yeşil durum çubukları gösterir. aşağıdaki koşullar geçerlidir:

  • WKWebView Google Mobile Ads SDK'sına bağlandı

Sonraki adımlar

  • WKWebViewürününde izin alın. Şunun için Web görünümü API'leri: Reklamlar, mobil uygulama bağlamında toplanan izni IAB TCF 2.0 sürümü veya IAB CCPA uyum çerçevelerini nasıl belirleyeceğinizi öğrendiniz. Bu konuyla ilgileniyorsanız sahibi olarak tek bir izin akışı uygulayarak WKWebView ve ilişkili web içeriği kullanıcı rızası yönetim platformunuzla birlikte çalışarak, Bağlam. WKWebView