Configura WebView

Se la tua Android app utilizza WebView per visualizzare i contenuti web, ti consigliamo di configurarlo in modo che i contenuti possano essere monetizzati in modo ottimale con gli annunci.

Questa guida illustra come fornire informazioni su come configurare un WebView .

Attivare i cookie di terze parti

Per migliorare l'esperienza pubblicitaria degli utenti ed essere coerenti con le norme sui cookie, attiva terze parti di cookie nella tua istanza WebView.

Java

CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);

Kotlin

CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)

Impostazioni web

默认的WebView设置不会针对广告进行优化。使用 WebSettings 用于配置 WebView 的 API:

  • JavaScript
  • 访问本地存储空间
  • 自动播放视频

Java

import android.webkit.CookieManager;
import android.webkit.WebView;

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);
  }
}

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView

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
  }
}

Carica contenuti visualizzazione web

I cookie e gli URL delle pagine sono importanti per la monetizzazione della visualizzazione web e funzionano solo come previsto quando viene utilizzato con un basato su rete. Per un rendimento WebView ottimizzato, Caricare contenuti web direttamente dagli URL basati sulla rete. Evita di utilizzare WebViewAssetLoader, caricamento in corso... asset dal dispositivo o generando contenuti web in modo dinamico.

Java

import android.webkit.CookieManager;
import android.webkit.WebView;

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);

    // Load the URL for optimized web view performance.
    webView.loadUrl("https://webview-api-for-ads-test.glitch.me");
  }
}

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView

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

    // Load the URL for optimized web view performance.
    webView.loadUrl("https://webview-api-for-ads-test.glitch.me")
  }
}

Testare la vista web

Durante lo sviluppo dell'app, ti consigliamo di caricare il seguente URL di test:

https://webview-api-for-ads-test.glitch.me#webview-settings-tests

per verificare che queste impostazioni abbiano l'effetto previsto sugli annunci. L'URL del test contiene criteri di successo per un'integrazione completa se si osservano i seguenti criteri:

Impostazioni della vista web

  • I cookie di terze parti funzionano
  • I cookie proprietari funzionano
  • JavaScript attivato
  • Archiviazione DOM abilitata

Annuncio video

  • L'annuncio video viene riprodotto in linea e non si apre nella modalità a schermo intero integrata giocatore
  • L'annuncio video viene riprodotto automaticamente senza fare clic sul pulsante di riproduzione.
  • L'annuncio video può essere riprodotto di nuovo

Al termine del test, sostituisci l'URL del test con l'URL della visualizzazione web. che intende caricare.