As APIs de visualização da Web para anúncios disponibilizam indicadores de apps para as tags na sua
WebView. Isso melhora a monetização dos
publishers que forneceram o conteúdo e protege os anunciantes contra spam.
Esses indicadores de apps, como o ID e a versão do app, ajudam a ativar os casos de uso de relatórios
e segmentação do inventário do navegador no app
, que, de outra forma, só estão disponíveis no tráfego de apps.
Como funciona
A comunicação com o Google Mobile Ads SDK só acontece em resposta a eventos de anúncio acionados por alguma das opções a seguir:
O SDK adiciona manipuladores de mensagens à WebView registrada 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
- Google Mobile Ads SDK versão 20.6.0 ou mais recente.
API Android nível 21 ou mais recente.
Adicione a seguinte tag
<meta-data>ao arquivoAndroidManifest.xmlpara ignorar a verificação doAPPLICATION_ID. Se você pular essa etapa e não incluir a tag<meta-data>, o Google Mobile Ads SDK vai gerar umaIllegalStateExceptionao iniciar o app.<!-- Bypass APPLICATION_ID check for web view APIs for ads --> <meta-data android:name="com.google.android.gms.ads.INTEGRATION_MANAGER" android:value="webview"/>
Registrar a visualização da Web
Chame
registerWebView()
na linha de execução principal para estabelecer uma conexão com os manipuladores de JavaScript no
Código do AdSense ou na Tag de Publisher do Google em cada instância de WebView. Isso
precisa ser feito o mais cedo possível, como no
onCreate() método da sua MainActivity.
Kotlin
import android.webkit.CookieManager
import android.webkit.WebView
import com.google.android.gms.ads.MobileAds
class MainActivity : AppCompatActivity() {
lateinit var webView: WebView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
webView = findViewById(R.id.webview)
// Let the web view accept third-party cookies.
CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
// Let the web view use JavaScript.
webView.settings.javaScriptEnabled = true
// Let the web view access local storage.
webView.settings.domStorageEnabled = true
// Let HTML videos play automatically.
webView.settings.mediaPlaybackRequiresUserGesture = false
// Register the web view.
MobileAds.registerWebView(webView)
}
}
Java
import android.webkit.CookieManager;
import android.webkit.WebView;
import com.google.android.gms.ads.MobileAds;
public class MainActivity extends AppCompatActivity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = findViewById(R.id.webview);
// Let the web view accept third-party cookies.
CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
// Let the web view use JavaScript.
webView.getSettings().setJavaScriptEnabled(true);
// Let the web view access local storage.
webView.getSettings().setDomStorageEnabled(true);
// Let HTML videos play automatically.
webView.getSettings().setMediaPlaybackRequiresUserGesture(false);
// Register the web view.
MobileAds.registerWebView(webView);
}
}
Testar sua integração
Antes de usar seu próprio URL, recomendamos que você carregue o seguinte URL para testar a integração:
https://google.github.io/webview-ads/test/#api-for-ads-tests
O URL de teste mostra barras de status verdes para uma integração bem-sucedida, contanto que a seguinte condição seja atendida:
WebViewconectado a Google Mobile Ads SDK
Próximas etapas
- Obtenha consentimento em
WebView. As APIs de visualização da Web para anúncios não propagam o consentimento coletado no contexto do app para dispositivos móveis usando as estruturas de conformidade da TCF v2.0 do IAB ou da CCPA do IAB para as tags nas suas visualizações da Web. Se você quiser implementar um único fluxo de consentimento como proprietário daWebViewe do conteúdo da Web correspondente que está sendo monetizado, trabalhe com sua plataforma de gestão de consentimento para coletar o consentimento no contexto daWebView.