الإعلانات البينية

اختيار النظام الأساسي: Android iOS Unity Flutter Android (قديم)

"الإعلانات البينية" هي إعلانات بملء الشاشة تغطي واجهة التطبيق المضيف. ويتم عرضها عادةً في نقاط انتقال طبيعية خلال مسار عرض التطبيق، على سبيل المثال بين الأنشطة أو في الوقت الفاصل بين مستويَين في لعبة. عندما يعرض أحد التطبيقات إعلانًا بينيًا، يكون لدى المستخدم خيار النقر على الإعلان والانتقال إلى وجهته أو إغلاقه والعودة إلى التطبيق.

يشرح هذا الدليل كيفية دمج "الإعلانات البينية" في تطبيق Flutter.

اختبِر دائمًا باستخدام الإعلانات الاختبارية

عند إنشاء تطبيقاتك واختبارها، تأكَّد من استخدام الإعلانات الاختبارية بدلاً من الإعلانات المباشرة والإنتاجية. وقد يؤدي عدم إجراء ذلك إلى تعليق حسابك.

أسهل طريقة لتحميل الإعلانات الاختبارية هي استخدام معرّف الوحدة الإعلانية الاختبارية المخصّص للإعلانات البينية:

Android

ca-app-pub-3940256099942544/1033173712

iOS

ca-app-pub-3940256099942544/4411468910

يتم إعداد الوحدات الإعلانية الاختبارية لعرض إعلانات اختبارية لكل طلب، ويمكنك استخدامها في تطبيقاتك أثناء الترميز والاختبار وتصحيح الأخطاء. احرص فقط على استبدالها بمعرّفات وحداتك الإعلانية قبل نشر تطبيقك.

تحميل إعلان

يعرض المثال التالي كيفية تحميل "إعلان بيني":

InterstitialAd.load(
  adUnitId: "_adUnitId",
  request: const AdRequest(),
  adLoadCallback: InterstitialAdLoadCallback(
    onAdLoaded: (InterstitialAd ad) {
      // Called when an ad is successfully received.
      debugPrint('Ad was loaded.');
      // Keep a reference to the ad so you can show it later.
      _interstitialAd = ad;
    },
    onAdFailedToLoad: (LoadAdError error) {
      // Called when an ad request failed.
      debugPrint('Ad failed to load with error: $error');
    },
  ),
);

استبدِل _adUnitId برقم تعريف وحدتك الإعلانية.

أحداث "الإعلانات البينية"

من خلال استخدام FullScreenContentCallback، يمكنك الاستماع إلى أحداث مراحل النشاط، مثل وقت عرض الإعلان أو إغلاقه. اضبط InterstitialAd.fullScreenContentCallback قبل عرض الإعلان لتلقّي إشعارات بشأن هذه الأحداث. ينفّذ هذا المثال كل طريقة:

ad.fullScreenContentCallback = FullScreenContentCallback(
  onAdShowedFullScreenContent: (ad) {
    // Called when the ad showed the full screen content.
    debugPrint('Ad showed full screen content.');
  },
  onAdFailedToShowFullScreenContent: (ad, err) {
    // Called when the ad failed to show full screen content.
    debugPrint('Ad failed to show full screen content with error: $err');
    // Dispose the ad here to free resources.
    ad.dispose();
  },
  onAdDismissedFullScreenContent: (ad) {
    // Called when the ad dismissed full screen content.
    debugPrint('Ad was dismissed.');
    // Dispose the ad here to free resources.
    ad.dispose();
  },
  onAdImpression: (ad) {
    // Called when an impression occurs on the ad.
    debugPrint('Ad recorded an impression.');
  },
  onAdClicked: (ad) {
    // Called when a click is recorded for an ad.
    debugPrint('Ad was clicked.');
  },
);

عرض إعلان بيني

يتم عرض InterstitialAd على شكل Overlay فوق كل محتوى التطبيق، ويكون موضعه ثابتًا، وبالتالي لا يمكن إضافته إلى شجرة تطبيقات Flutter المصغّرة. يمكنك اختيار وقت عرض الإعلان من خلال استدعاء show().

_interstitialAd?.show();

بعد استدعاء show()، لا يمكن إغلاق Ad المعروض بهذه الطريقة برمجيًا، ويتطلّب ذلك إدخالاً من المستخدم. يمكن عرض InterstitialAd مرة واحدة فقط. ستؤدي الطلبات اللاحقة للعرض إلى تشغيل onAdFailedToShowFullScreenContent.

يجب التخلص من الإعلان عندما لا تكون هناك حاجة إلى الوصول إليه. أفضل الممارسات لموعد استدعاء dispose() هي في عمليات الاستدعاء FullScreenContentCallback.onAdDismissedFullScreenContent وFullScreenContentCallback.onAdFailedToShowFullScreenContent.

هذا كل شيء! أصبح تطبيقك الآن جاهزًا لعرض "الإعلانات البينية".

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

مثال كامل على GitHub

للاطّلاع على المثال الكامل، يُرجى مراجعة العرض التوضيحي لواجهة برمجة التطبيقات.