بهبود زمان بارگذاری IMA، بهبود زمان بارگذاری IMA
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
IMA SDK وابستگیها را برای درخواست جریانهای درج آگهی پویا (DAI)، اندازهگیری قابلیت مشاهده و گزارش نمایش آگهیها بارگیری میکند. با مقداردهی اولیه IMA قبل از درخواست جریان، زمان بارگیری وابستگیهای IMA را قبل از پخش جریانی به حداکثر میرسانید. این صفحه نحوه مدیریت زمان بارگذاری IMA در برنامه شما را پوشش می دهد.
فراخوانی ImaSdkFactory.initialize()
متد ImaSdkFactory.initialize()
شروع به بارگیری منابع SDK قبل از اولین درخواست جریان می کند. برای استفاده initialize()
به IMA نسخه 3.35.1 یا بالاتر نیاز دارید.
هنگام راهاندازی برنامه، یا در اوایل چرخه عمر برنامه، همانطور که ساختار برنامه شما اجازه میدهد، ImaSdkFactory.initialize()
را فراخوانی کنید. initialize()
پارامترهای زیر را می گیرد:
-
context
: از زمینه برنامه استفاده می کند که همیشه در طول چرخه عمر برنامه در دسترس است. -
settings
: یک شی ImaSdkSettings
را با مقادیر تنظیم شده ارسال کنید. تنظیمات IMA مورد استفاده در فراخوانی initialize()
باید با مقادیر تنظیمات استفاده شده در فراخوانی createAdsLoader()
یکسان باشد. IMA SDK از این تنظیمات، به ویژه تنظیمات زبان، برای کلید کش استفاده می کند. استفاده از مقادیر آزمایشی یا جعلی را برای تنظیمات مورد استفاده در فراخوانی متد initialize()
توصیه نمیکنیم، زیرا ممکن است حافظه پنهان رخ دهد و زمان بارگذاری آگهی افزایش یابد.
استفاده مجدد از نمونه AdsLoader
برای بهبود زمان بارگذاری IMA، توصیه می کنیم از همان نمونه AdsLoader
دوباره استفاده کنید. رابط AdsLoader
می تواند چندین درخواست تبلیغات یا جریان را مدیریت کند. از ایجاد یک نمونه AdsLoader
جدید برای هر درخواست خودداری کنید. ایجاد یک نمونه AdsLoader
جدید به زمان بارگیری نیاز دارد و از منابع دستگاه اضافی استفاده می کند.
قبل از پخش، پخش را درخواست کنید
اگر قبل از شروع پخش جریانی به نمونه AdsLoader
دسترسی دارید، میتوانید روش AdsLoader.requestStream()
را نیز زودتر فراخوانی کنید. برقراری این تماس بارگیری جریان DAI را آغاز می کند. هنگامی که کاربر آماده شروع پخش استریم است، متد StreamManager.init()
را فراخوانی کنید تا پخش جریانی را مقداردهی اولیه کند.
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2025-08-21 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-08-21 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Improve IMA load time\n\nThe IMA SDK loads dependencies to request Dynamic Ad Insertion (DAI) streams,\nmeasure viewability and report ad impressions. By initializing IMA before you\nmake a stream request, you maximize the time to load IMA dependencies before\nstream playback. This page covers how to handling IMA load times in your app.\n\nCall `ImaSdkFactory.initialize()`\n---------------------------------\n\nThe\n[`ImaSdkFactory.initialize()`](/ad-manager/dynamic-ad-insertion/sdk/android/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 stream request.\nTo use `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`](/ad-manager/dynamic-ad-insertion/sdk/android/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 streams in advance of playback\n--------------------------------------\n\nIf you have access to the `AdsLoader` instance prior to starting stream\nplayback, you can also call the\n[`AdsLoader.requestStream()`](/ad-manager/dynamic-ad-insertion/sdk/android/api/reference/com/google/ads/interactivemedia/v3/api/AdsLoader#requestStream(com.google.ads.interactivemedia.v3.api.StreamRequest))\nmethod early. Making this call starts loading the DAI stream. When the user\nis ready to start stream playback, call the\n[`StreamManager.init()`](/ad-manager/dynamic-ad-insertion/sdk/android/api/reference/com/google/ads/interactivemedia/v3/api/BaseManager#init())\nmethod to initialize stream playback."]]