دمج واجهة برمجة التطبيقات WebView API للإعلانات

تعمل واجهات برمجة تطبيقات عرض الويب للإعلانات على إتاحة إشارات التطبيق للعلامات في WebView، ما يساعد في تحسين تحقيق الربح الناشرين الذين قدّموا المحتوى وحماية المعلنين من المحتوى غير المرغوب فيه

آلية العمل

لا يتم الاتصال بحزمة "SDK لإعلانات Google على الأجهزة الجوّالة" إلا استجابةً للإعلان الأحداث التي يتم تشغيلها بواسطة أي مما يلي:

تضيف حزمة تطوير البرامج (SDK) معالِجات الرسائل إلى النطاق المسجَّل. WebView الاستماع إلى أحداث الإعلانات هذه. للحصول على نتائج أفضل تعرف على كيفية عمل ذلك، يمكنك الاطلاع على رمز المصدر صفحة اختبارية.

المتطلبات الأساسية

  • SDK لإعلانات Google على الأجهزة الجوّالة إصدار 20.6.0 أو إصدار أحدث.
  • المستوى 21 من واجهة برمجة تطبيقات Android أو المستويات الأعلى

  • أضِف علامة <meta-data> التالية في ملف AndroidManifest.xml إلى تجاوز عملية التحقق من APPLICATION_ID. إذا فاتتك هذه الخطوة توفير العلامة <meta-data>، فستطرح حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" 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() في سلسلة التعليمات الرئيسية لتأسيس اتصال بمعالجات JavaScript رمز AdSense أو علامة "ناشر Google" ضمن كل 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 تم الربط بحزمة "SDK لإعلانات Google على الأجهزة الجوّالة"

الخطوات التالية