Le API WebView per gli annunci rendono disponibili gli indicatori delle app ai tag in
WKWebView, contribuendo a migliorare la monetizzazione per i
publisher che hanno fornito i contenuti e a proteggere gli inserzionisti dallo spam.
Come funziona
La comunicazione con Google Mobile Ads SDK avviene solo in risposta a eventi relativi agli annunci attivati da uno dei seguenti elementi:
L'SDK aggiunge gestori di messaggi all'elemento WKWebView registrato per ascoltare questi eventi relativi agli annunci. Per comprendere meglio come funziona, visualizza il codice sorgente della pagina di test.
Prerequisiti
- Google Mobile Ads SDK versione 9.6.0 o successive.
Aggiorna il file
Info.plistcon la seguente chiave e il seguente valore stringa. In questo modo, viene ignorato un controllo eseguito da Google Mobile Ads SDK per un valoreGADApplicationIdentifierche si applica agli sviluppatori che implementano gli annunci al di fuori di una visualizzazione web. Se salti questo passaggio e non fornisci unGADApplicationIdentifier, Google Mobile Ads SDK genera unGADInvalidInitializationExceptionall'avvio dell'app.<!-- Indicate Google Mobile Ads SDK usage is only for web view APIs for ads --> <key>GADIntegrationManager</key> <string>webview</string>
Registra la visualizzazione web
Chiama
register(_:)
sul thread principale per stabilire una connessione con i gestori JavaScript nel codice AdSense o nel Tag publisher di Google all'interno di ogni istanza WKWebView. Questa operazione deve essere eseguita il prima possibile, ad esempio nel metodo viewDidLoad del tuo view controller.
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.
MobileAds.shared.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];
}
Verifica la tua integrazione
Prima di utilizzare il tuo URL, ti consigliamo di caricare il seguente URL per testare l'integrazione:
https://google.github.io/webview-ads/test/#api-for-ads-tests
L'URL di test mostra barre di stato verdi per un'integrazione riuscita se si applicano le seguenti condizioni:
WKWebViewcollegato a Google Mobile Ads SDK
Passaggi successivi
- Raccogli il consenso in
WKWebView. Le API WebView per gli annunci non propagano il consenso raccolto nel contesto dell'app mobile utilizzando i framework di conformità TCF v2.3 di IAB o CCPA di IAB ai tag nelle visualizzazioni web. Se ti interessa implementare un unico flusso di consenso in qualità di proprietario sia diWKWebViewsia dei relativi contenuti web monetizzati, collabora con la tua piattaforma di gestione del consenso per raccogliere il consenso nel contesto diWKWebView.