إعداد WebView

إذا كان Android تطبيقك يستخدم WebView لعرض محتوى الويب، فهو ننصحك بضبطها بحيث يمكن تحقيق الربح الأمثل من المحتوى باستخدام الإعلانات

يوضح هذا الدليل كيفية تقديم معلومات حول كيفية تهيئة WebView .

تفعيل ملفات تعريف الارتباط التابعة لجهات خارجية

لتحسين تجربة الإعلان لدى المستخدم والتوافق مع ممارسات Chrome سياسة ملفات تعريف الارتباط، تفعيل الجهات الخارجية ملفات تعريف الارتباط على مثيل WebView.

Java

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

Kotlin

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

إعدادات الويب

إعدادات WebView التلقائية غير محسّنة لعرض الإعلانات. يمكنك استخدام WebSettings واجهات برمجة التطبيقات لإعداد WebView للموارد التالية:

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

تحميل محتوى عرض الويب

ملفات تعريف الارتباط وعناوين 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 التجريبي على معايير النجاح للتكامل الكامل في حال رصد ما يلي:

إعدادات عرض الويب

  • تعمل ملفات تعريف الارتباط التابعة لجهات خارجية.
  • تعمل ملفات تعريف الارتباط الخاصة بالطرف الأول.
  • تم تفعيل JavaScript
  • تم تفعيل مساحة تخزين DOM

إعلان فيديو

  • يتم تشغيل إعلان الفيديو بشكل مضمّن ولا يتم فتحه في وضع ملء الشاشة المدمج. لاعب
  • يتم تشغيل إعلان الفيديو تلقائيًا بدون النقر على زر التشغيل.
  • إعلان الفيديو قابل لإعادة التشغيل

بعد اكتمال الاختبار، استبدِل عنوان URL التجريبي بعنوان URL في عرض الويب. ينوي تحميله.