As APIs WebView para anúncios disponibilizam indicadores de app para as tags no
WebView
, 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 mensagens ao WebView
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 20.6.0 ou mais recente.
Nível 21 da API do Android ou mais recente.
Adicione a seguinte tag
<meta-data>
ao arquivoAndroidManifest.xml
para ignorar a verificação doAPPLICATION_ID
. Se você pular 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 manipuladores de JavaScript no
código do Google AdSense ou na tag do Google Publisher em cada instância de WebView
. Isso
precisa ser feito o mais cedo possível, como no
método onCreate()
do 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 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:
WebView
conectado ao SDK dos anúncios para dispositivos móveis do Google
Próximas etapas
- Colete o 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 os frameworks de compliance do IAB TCF v2.0 ou IAB CCPA para as tags nas suas visualizações da Web. Se você tiver interesse em implementar um único fluxo de consentimento como proprietário doWebView
e do conteúdo da Web correspondente que está sendo monetizado, trabalhe com sua plataforma de gerenciamento de consentimento para coletar o consentimento no contexto doWebView
.