הגדרת WebView

אם באפליקציה Android נעשה שימוש בWebView כדי להציג תוכן מהאינטרנט, מומלץ להגדיר אותו כך שניתן יהיה לייצר הכנסות ממנו בצורה אופטימלית באמצעות מודעות.

במדריך הזה מוסבר איך לספק מידע על אופן ההגדרה של אובייקטWebView .

הפעלת קובצי cookie של צד שלישי

כדי לשפר את חוויית הצופה במודעה ולעמוד בדרישות המדיניות של Chrome בנושא קובצי cookie, עליך להפעיל קובצי cookie של צד שלישי במכונה של WebView.

Java

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

Kotlin

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

הגדרות אינטרנט

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

טעינת תוכן של תצוגת אינטרנט

קובצי cookie וכתובות URL של דפים חשובים לביצועים של צפיות באינטרנט, ופועלים כמצופה רק כשמשתמשים ב- עם כתובת URL מבוססת רשת. כדי לשפר את WebView הביצועים,כדאי לטעון תוכן באינטרנט ישירות מכתובות URL שמבוססות על רשת, ולא להשתמש ב-WebViewAssetLoader, לטעון נכסים מהמכשיר או ליצור תוכן באינטרנט באופן דינמי.

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

בדיקה של תצוגת האינטרנט

במהלך פיתוח האפליקציה, מומלץ לטעון את כתובת ה-URL לבדיקה:

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

כדי לוודא שלהגדרות האלה יש את ההשפעה הרצויה על מודעות. לכתובת ה-URL לבדיקה יש קריטריונים להצלחה של אינטגרציה מלאה, אם עומדים התנאים הבאים:

הגדרות של תצוגה מפורטת באינטרנט

  • קובצי cookie של צד שלישי פועלים
  • קובצי cookie מהדומיין הנוכחי פועלים
  • JavaScript מופעל
  • אחסון DOM מופעל

מודעת וידאו

  • מודעת הווידאו מופעלת ברצף ואינה נפתחת בנגן המובנה במסך מלא
  • מודעת הווידאו מופעלת באופן אוטומטי בלי ללחוץ על לחצן ההפעלה
  • מודעת הווידאו ניתנת להפעלה מחדש

אחרי שהבדיקה מסתיימת, מחליפים את כתובת ה-URL לבדיקה בכתובת ה-URL שרוצים לטעון את תצוגת האינטרנט.