משלבים את WebView API for Ads

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

איך זה עובד

התקשורת עם Google Mobile Ads SDK מתרחשת רק בתגובה לאירועי מודעות שמופעלים על ידי אחת מהאפשרויות הבאות:

ב-SDK מוסיפה גורמים מטפלים בהודעות ל-WebView הרשומים כדי להאזין לאירועי המודעות האלה. כדי להבין טוב יותר איך זה עובד, קראו את קוד המקור של דף הבדיקה.

דרישות מוקדמות

  • Google Mobile Ads SDK מגרסה 20.6.0 ואילך.
  • Android API ברמת 21 ומעלה.

  • מוסיפים את התג <meta-data> הבא לקובץ AndroidManifest.xml כדי לעקוף את הבדיקה של APPLICATION_ID. אם תחמיצו את השלב הזה ולא תספקו את התג <meta-data>, Google Mobile Ads SDK יפתח IllegalStateException בתחילת האפליקציה.

    <!-- Bypass APPLICATION_ID check for web view APIs for ads -->
     <meta-data
         android:name="com.google.android.gms.ads.INTEGRATION_MANAGER"
         android:value="webview"/>
    

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

קוראים לפונקציה registerWebView() ב-thread הראשי כדי ליצור קשר עם רכיבי ה-handler של JavaScript בקוד AdSense או ב-Google Publisher Tag בכל WebView מכונה. צריך לעשות זאת בהקדם האפשרי, למשל בשיטה דרך onCreate() מתוך MainActivity.

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

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)

    // Enable third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
    // Enable JavaScript in the WebView.
    webView.settings.javaScriptEnabled = true
    // Enable DOM storage in the WebView.
    webView.settings.domStorageEnabled = true
    // Enable videos to play automatically.
    webView.settings.mediaPlaybackRequiresUserGesture = false

    // Register the web view.
    MobileAds.registerWebView(webView)
  }
}

בדיקת השילוב

לפני שמשתמשים בכתובת URL משלכם, מומלץ לטעון את כתובת ה-URL הבאה כדי לבדוק את השילוב:

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

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

  • WebView מחוברים ל-Google Mobile Ads SDK

השלבים הבאים

  • ניתן לקבל הסכמה בעוד WebView. ממשקי ה-API של Web View for Ads לא מפיצים הסכמה שהתקבלה בהקשר של האפליקציה לנייד באמצעות מסגרות התאימות IAB TCF גרסה 2.0 או ה-CCPA של IAB לתגים בתצוגות מפורטות באינטרנט. אם אתם רוצים להטמיע תהליך הסכמה יחיד כבעלים שלWebView וגם של התוכן המתאים באינטרנט שמופעלת בו מונטיזציה, עליכם לעבוד עם הפלטפורמה לניהול הסכמה כדי לאסוף את אישורי ההסכמה לפי ההקשר WebView .