As APIs WebView para anúncios disponibilizam indicadores de app para as tags no
WKWebView
, ajudando a melhorar a monetização dos
editores que forneceram o conteúdo e a proteger os anunciantes contra spam.
Como funciona
A comunicação com o SDK dos anúncios para dispositivos móveis do Google só acontece em resposta a eventos de anúncios acionados por uma das seguintes opções:
O SDK adiciona processadores de mensagem aoWKWebView
registrado para detectar esses eventos de anúncio. Para entender
melhor como isso funciona, consulte o código-fonte da
página de teste.
Pré-requisitos
- SDK dos anúncios para dispositivos móveis do Google versão 9.6.0 ou mais recente.
Atualize o arquivo
Info.plist
com a chave e o valor da string a seguir. Isso ignora uma verificação feita pelo SDK dos anúncios para dispositivos móveis do Google para um valorGADApplicationIdentifier
que se aplica a desenvolvedores que implementam anúncios fora de uma visualização da Web. Se você pular essa etapa e não fornecer umGADApplicationIdentifier
, o SDK dos anúncios para dispositivos móveis do Google vai gerar umaGADInvalidInitializationException
na inicialização do app.<!-- Indicate Google Mobile Ads SDK usage is only for web view APIs for ads --> <key>GADIntegrationManager</key> <string>webview</string>
Registrar a visualização da Web
Chame
register(_:)
na linha de execução principal para estabelecer uma conexão com os manipuladores de JavaScript no
código do Google AdSense ou na tag do Google Publisher em cada instância WKWebView
. Isso
precisa ser feito o mais cedo possível, como no
método
viewDidLoad
do controlador de visualização.
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];
}
Testar sua integração
Antes de usar seu próprio URL, recomendamos que você carregue o URL a seguir para testar a integração:
https://webview-api-for-ads-test.glitch.me#api-for-ads-tests
O URL de teste mostra barras de status verdes para uma integração bem-sucedida se as seguintes condições forem aplicadas:
WKWebView
conectado ao SDK dos anúncios para dispositivos móveis do Google
Próximas etapas
- Colete o consentimento em
WKWebView
. As APIs de visualização da Web para ads não propagam o consentimento coletado no contexto do app para dispositivos móveis usando TCF v2.0 do IAB ou frameworks de compliance do CCPA do IAB para as tags nas visualizações da Web. Se você quiser implementar um único fluxo de consentimento como proprietário doWKWebView
e do conteúdo da Web correspondente que está sendo monetizado, trabalhe com sua plataforma de gestão de consentimento para coletar o consentimento no contextoWKWebView
.