Le API WebView per gli annunci rendono disponibili gli indicatori delle app per i tag in WebView
, contribuendo a migliorare la monetizzazione per i publisher che hanno fornito i contenuti e a proteggere gli inserzionisti dallo spam.
Questi indicatori delle app, come l'ID app e la versione dell'app, consentono di attivare i casi d'uso di generazione di report
e di scelta come target dell'inventario del browser in-app
che altrimenti sono disponibili solo per il traffico delle app.
Come funziona
La comunicazione con l'SDK Google Mobile Ads avviene solo in risposta a eventi correlati agli annunci attivati da uno dei seguenti elementi:
L'SDK aggiunge gestori dei messaggi al WebView
registrato per ascoltare questi eventi correlati agli annunci. Per comprendere meglio come funziona, visualizza il codice sorgente della pagina di test.
Prerequisiti
- SDK Google Mobile Ads versione 20.6.0 o successive.
Livello API Android 21 o superiore.
Aggiungi il seguente tag
<meta-data>
al fileAndroidManifest.xml
peraggirare il controllo delAPPLICATION_ID
. Se salti questo passaggio e non fornisci il tag<meta-data>
, l'SDK Google Mobile Ads genera un messaggio di erroreIllegalStateException
all'avvio dell'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"/>
Registra la visualizzazione web
Chiama
registerWebView()
nel thread principale per stabilire una connessione con gli handler JavaScript nel
codice AdSense o nel tag publisher Google all'interno di ogni istanza WebView
. Questa operazione deve essere eseguita il prima possibile, ad esempio nel metodo onCreate()
di 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);
}
}
Testa l'integrazione
Prima di utilizzare il tuo URL, ti consigliamo di caricare il seguente URL per testare l'integrazione:
https://webview-api-for-ads-test.glitch.me#api-for-ads-tests
L'URL di test mostra barre di stato verdi per un'integrazione riuscita se si applicano le seguenti condizioni:
WebView
collegata all'SDK Google Mobile Ads
Passaggi successivi
- Raccogli il consenso in
WebView
. Le API WebView per gli annunci non propagano il consenso raccolto nel contesto dell'app mobile utilizzando i framework di conformità della versione 2.0 del TCF di IAB o del CCPA di IAB ai tag nelle visualizzazioni web. Se vuoi implementare un unico flusso di consenso in qualità di proprietario sia dell'WebView
sia dei relativi contenuti web monetizzati, collabora con la tua piattaforma di gestione del consenso per raccogliere il consenso nel contesto dell'WebView
.