مراقبة أحداث تسجيل الإعلانات مؤقتًا
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يوضّح هذا الدليل كيفية اتّخاذ إجراء استنادًا إلى حالة التخزين المؤقت للإعلان.
استخدام أحداث المخزن المؤقت في تطبيقك
يمكنك استخدام طرق التفويض التالية في IMAAdsManagerDelegate
لإضافة إشارة نشاط إلى تطبيقك عندما يتم إيقاف الإعلانات مؤقتًا في ذاكرة التخزين المؤقت:
- (void)adsManagerAdDidStartBuffering(IMAAdsManager *)adsManager
: يتمّ استدعاؤه
عندما يتوقف إعلان بدأ تشغيله مؤقتًا في ذاكرة التخزين المؤقت.
- (void)adsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime
:
يتمّ استدعاؤها كعناصر تخزين مؤقت للإعلانات. يتم استدعاء هذه الطريقة بشكل متكرّر ما دام الإعلان في وضع التمرير المؤقت.
- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager
: يتمّ استدعاؤها عندما يتم تخزين الإعلان الحالي مؤقتًا بشكلٍ كافٍ لكي لا يتجاوز تشغيل الإعلان سعة التخزين المؤقت.
مثال
تستند جميع الإضافات إلى
نموذج حزمة تطوير البرامج (SDK) المتقدّمة لإعلانات الوسائط التفاعلية
(لنظامَي التشغيل iOS وtvOS):
@interface VideoViewController () <IMAAdsManagerDelegate,...>
...
@end
@implementation VideoViewController
...
- (void)adsManagerAdDidStartBuffering:(IMAAdsManager *)adsManager {
// Show your activity indicator above the video player - ad playback has
// stopped to buffer.
}
- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager {
// Hide your activity indicator - as playback resumes.
}
الأسئلة الشائعة
هل يمكنني عرض مؤشر نشاط قبل بدء عرض إعلاني؟
نعم، ولكننا ننصح بالاعتماد على طرق تفويض مختلفة لحالة الاستخدام هذه. يمكنك عرض مؤشر النشاط عند الاتصال بـ [adsManager start]
،
وإخفاء مؤشر النشاط عند رصد kIMAAdEvent_STARTED
في
- (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event
.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThis guide provides instructions on how to leverage ad buffer events to display an activity indicator during ad buffering.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can utilize the \u003ccode\u003eIMAAdsManagerDelegate\u003c/code\u003e methods, such as \u003ccode\u003eadsManagerAdDidStartBuffering\u003c/code\u003e, \u003ccode\u003eadsManager:adDidBufferToMediaTime:\u003c/code\u003e, and \u003ccode\u003eadsManagerAdPlaybackReady\u003c/code\u003e, to manage the activity indicator's visibility based on the ad's buffering state.\u003c/p\u003e\n"],["\u003cp\u003eThe provided code example demonstrates how to integrate these methods into an iOS or tvOS application, using the IMA SDK Advanced Sample as a basis.\u003c/p\u003e\n"],["\u003cp\u003eWhile displaying an activity indicator before ad playback is possible, it's recommended to use different delegate methods and events like \u003ccode\u003e[adsManager start]\u003c/code\u003e and \u003ccode\u003ekIMAAdEvent_STARTED\u003c/code\u003e for that purpose.\u003c/p\u003e\n"]]],[],null,["# Monitor ad buffering events\n\nThis guide explains how to take action based on ad buffering state.\n\nUsing buffer events in your app\n-------------------------------\n\nYou can use the following delegate methods on `IMAAdsManagerDelegate` to add an\nactivity indicator to your app when ads pause to buffer:\n\n- `- (void)adsManagerAdDidStartBuffering(IMAAdsManager *)adsManager`: Called when an ad that already started playing has stopped to buffer.\n- `- (void)adsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime`: Called as an ad buffers. This method is called repeatedly as long as an ad is buffering.\n- `- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager`: Called when the current ad is sufficiently buffered such that ad playback is not likely to outrun the buffer.\n\n### Example\n\nAll additions are based on the\n[IMA SDK Advanced Sample](//github.com/googleads/googleads-ima-ios/tree/master/Objective-C/AdvancedExample)\n(for both iOS and tvOS): \n\n```objective-c\n @interface VideoViewController () \u003cIMAAdsManagerDelegate,...\u003e\n\n ...\n\n @end\n\n @implementation VideoViewController\n\n ...\n\n - (void)adsManagerAdDidStartBuffering:(IMAAdsManager *)adsManager {\n // Show your activity indicator above the video player - ad playback has\n // stopped to buffer.\n }\n\n - (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager {\n // Hide your activity indicator - as playback resumes.\n }\n```\n\nFAQ\n---\n\n### Can I show an activity indicator before my ad starts playing?\n\nYes, but we recommend relying on different delegate methods for that\nuse case. You can show the activity indicator when you call `[adsManager start]`,\nand hide the activity indicator when you catch `kIMAAdEvent_STARTED` in\n`- (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event`."]]