As APIs de visualização da Web para anúncios disponibilizam os indicadores do app para as tags na sua
WebView
, ajudando a melhorar a monetização para os
editores que forneceram o conteúdo e proteger os anunciantes contra spam.
Esses indicadores, como o ID e a versão, ajudam a ativar os casos de uso de Relatórios
e Segmentar inventário do navegador no app
que só estão disponíveis no tráfego do app.
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 gerenciadores de mensagens aoWebView
registrado para detectar esses eventos de anúncios. Para uma ideia melhor de 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 20.6.0 ou mais recente.
Android API de nível 21 ou mais recente.
Adicione a seguinte tag
<meta-data>
ao arquivoAndroidManifest.xml
para ignorar a verificação deAPPLICATION_ID
. Se você perder essa etapa e não fornecer a tag<meta-data>
, o SDK dos anúncios para dispositivos móveis do Google vai gerar umaIllegalStateException
na inicialização do 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 gerenciadores JavaScript no
código do AdSense ou na Tag do editor do Google em cada WebView
instância. Isso
precisa ser feito o quanto antes, por exemplo, no método
O método onCreate()
da sua MainActivity
.
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);
}
}
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)
// Enable third-party cookies.
CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
// Enable JavaScript in the WebView.
webView.settings.javaScriptEnabled = true
// Enable DOM storage in the WebView.
webView.settings.domStorageEnabled = true
// Enable videos to play automatically.
webView.settings.mediaPlaybackRequiresUserGesture = 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://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 se aplicarem:
WebView
conectado ao SDK dos anúncios para dispositivos móveis do Google
Próximas etapas
- Peça consentimento no
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 com o IAB TCF v2.0 ou a CCPA do IAB para as tags nas visualizações da Web. Se você quiser implementar um único fluxo de consentimento como proprietário deWebView
e do conteúdo da Web correspondente que está sendo monetizado, trabalhe com sua plataforma de gestão de consentimento para coletar consentimento no contextoWebView
.