Web Görünümü'nü ayarla

Uygulamanız Android web içeriklerini görüntülemek içinWebView kullanıyorsa reklamların reklamlarla en iyi şekilde para kazanılmasını sağlayacak şekilde yapılandırmanız önerilir.

Bu kılavuzda, birWebView nesnenin nasıl yapılandırılacağıyla ilgili bilgileri nasıl sağlayacağınız gösterilmektedir.

Üçüncü taraf çerezlerini etkinleştirme

Kullanıcınızın reklam deneyimini iyileştirmek ve Chrome'un çerez politikasıyla tutarlı olmak için WebView örneğinizde üçüncü taraf çerezlerini etkinleştirin.

Java

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

Kotlin

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

Web ayarları

Default WebView settings are not optimized for ads. Use the WebSettings APIs to configure your WebView for:

  • JavaScript
  • Access to local storage
  • Automatic video play

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

Web görünümü içeriğini yükle

Çerezler ve sayfa URL'leri, web görünümü performansı açısından önemlidir ve yalnızca ağ tabanlı bir URL ile kullanıldığında loadUrl() beklendiği gibi çalışır. Optimize edilmiş WebView performans içinweb içeriğini doğrudan ağ tabanlı URL'lerden yükleyin. WebViewAssetLoader kullanmaktan, cihazdaki öğeleri yüklemekten veya web içeriğini dinamik olarak oluşturmaktan kaçının.

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

Web görünümünü test etme

Uygulama geliştirme sırasında bu test URL'sini yüklemenizi öneririz:

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

bu ayarların reklamlar üzerinde amaçlanan etkiye sahip olduğunu doğrulamak için. Aşağıdakiler gözlemlenirse test URL'si tam entegrasyon için başarı kriterlerine sahiptir:

Web görünümü ayarları

  • Üçüncü taraf çerezleri çalışır
  • Birinci taraf çerezleri çalışır
  • JavaScript etkin
  • DOM depolama etkinleştirildi

Video reklam

  • Video reklam, satır içinde oynatılır ve tam ekran yerleşik oynatıcıda açılmıyor
  • Video reklam, oynat düğmesi tıklanmadan otomatik olarak oynatılır
  • Video reklam tekrar oynatılabilir

Test tamamlandıktan sonra, test URL'sini, web görünümünün yüklemeyi istediği URL ile değiştirin.