تحسين وقت تحميل IMA
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تحمّل حزمة تطوير البرامج لإعلانات الوسائط التفاعلية التبعيات لطلب الإعلانات وقياس إمكانية العرض وتسجيل مرات ظهور الإعلان. من خلال إعداد "إعلانات الوسائط التفاعلية" قبل إجراء طلب إعلان، يمكنك زيادة الوقت المتاح لتحميل التبعيات الخاصة بـ "إعلانات الوسائط التفاعلية" قبل تشغيل الإعلان. تتناول هذه الصفحة كيفية التعامل مع أوقات تحميل IMA في تطبيقك.
الاتصال بـ ImaSdkFactory.initialize()
تبدأ طريقة
ImaSdkFactory.initialize()
في التحميل المُسبَق لموارد حزمة تطوير البرامج (SDK) قبل طلب الإعلان الأول. لاستخدام initialize()
، يجب أن يكون لديك الإصدار 3.35.1 من "إعلانات الوسائط التفاعلية" أو إصدار أحدث.
استدعِ الدالة ImaSdkFactory.initialize()
عند بدء تشغيل التطبيق أو في أقرب وقت ممكن خلال دورة حياة التطبيق، وذلك حسب ما يسمح به هيكل تطبيقك. يتضمّن طلب initialize()
المَعلمات التالية:
context
: تستخدم سياق التطبيق الذي يكون متاحًا دائمًا خلال دورة حياة التطبيق.
settings
: مرِّر عنصر
ImaSdkSettings
مع ضبط قيمه. يجب أن تكون إعدادات IMA المستخدَمة في طلب initialize()
هي نفسها قيم الإعدادات المستخدَمة في طلب createAdsLoader()
. تستفيد حزمة تطوير البرامج لإعلانات الوسائط التفاعلية من هذه الإعدادات، خاصةً إعدادات اللغة، لمفتاح ذاكرة التخزين المؤقت. لا ننصح باستخدام قيم اختبارية أو وهمية للإعدادات المستخدَمة في استدعاء طريقة initialize()
، لأنّ ذلك قد يؤدي إلى عدم العثور على البيانات في ذاكرة التخزين المؤقت وزيادة وقت تحميل الإعلان.
إعادة استخدام مثيل AdsLoader
لتحسين وقت تحميل IMA، ننصحك بإعادة استخدام مثيل
AdsLoader
نفسه. يمكن لواجهة AdsLoader
التعامل مع طلبات متعدّدة للإعلانات أو البث.
تجنَّب إنشاء مثيل AdsLoader
جديد لكل طلب. يتطلّب إنشاء مثيل جديد
AdsLoader
وقت تحميل، ويستخدم موارد إضافية من الجهاز.
طلب إدراج الإعلانات قبل التشغيل
إذا كان بإمكانك الوصول إلى مثيل AdsLoader
قبل بدء تشغيل الإعلان، يمكنك أيضًا استدعاء الطريقة AdsLoader.requestAds()
مبكرًا. يؤدي إجراء هذا الاستدعاء إلى بدء تحميل إعلانات ما قبل التشغيل. عندما يصبح المستخدم جاهزًا لبدء تشغيل المحتوى، استدعِ طريقة AdsManager.init()
وانتظِر حدث LOADED
لتشغيل الإعلانات.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-09-05 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-09-05 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Improve IMA load time\n\nThe IMA SDK loads dependencies to request ads, measure viewability and\nreport ad impressions. By initializing IMA before you make an ad request, you\nmaximize the time to load IMA dependencies before ad playback. This page covers\nhow to handling IMA load times in your app.\n\nCall `ImaSdkFactory.initialize()`\n---------------------------------\n\nThe\n[`ImaSdkFactory.initialize()`](/interactive-media-ads/docs/sdks/android/client-side/api/reference/com/google/ads/interactivemedia/v3/api/ImaSdkFactory#initialize(android.content.Context,com.google.ads.interactivemedia.v3.api.ImaSdkSettings))\nmethod starts to preload SDK resources in advance of the first ad request. To\nuse `initialize()`, you need IMA version 3.35.1 or higher.\n\nCall `ImaSdkFactory.initialize()` on application startup, or as early in the\napplication's lifecycle as your app structure allows. The `initialize()` call\ntakes the following parameters:\n\n- **`context`**: Uses the application context, which is always available during the lifecycle of the application.\n- **`settings`** : Pass the an [`ImaSdkSettings`](/interactive-media-ads/docs/sdks/android/client-side/api/reference/com/google/ads/interactivemedia/v3/api/ImaSdkSettings) object with its values set. The IMA settings used in the `initialize()` call must be the same as the settings values used in the `createAdsLoader()` call. The IMA SDK utilizes these settings, particularly the language setting, for cache key. We don't recommend using test or fake values for the settings used in the `initialize()` method call, as cache misses might occur and increase ad load time.\n\nReuse the `AdsLoader` instance\n------------------------------\n\nTo improve IMA load time, we recommend you reuse the same\n[`AdsLoader`](/interactive-media-ads/docs/sdks/android/client-side/api/reference/com/google/ads/interactivemedia/v3/api/AdsLoader)\ninstance. The `AdsLoader` interface can handle multiple ad or stream requests.\nAvoid creating a new `AdsLoader` instance for each request. Creating a new\n`AdsLoader` instance requires a load time, and uses additional device resources.\n\nRequest ads in advance of playback\n----------------------------------\n\nIf you have access to the `AdsLoader` instance prior to starting ad playback,\nyou can also call the\n[`AdsLoader.requestAds()`](/interactive-media-ads/docs/sdks/android/client-side/api/reference/com/google/ads/interactivemedia/v3/api/AdsLoader#requestAds(com.google.ads.interactivemedia.v3.api.AdsRequest))\nmethod early. Making this call starts loading pre-roll ads. When the user\nis ready to start content playback, call the\n[`AdsManager.init()`](/interactive-media-ads/docs/sdks/android/client-side/api/reference/com/google/ads/interactivemedia/v3/api/BaseManager#init())\nmethod and wait for the `LOADED` event to play ads."]]