Улучшить время загрузки IMA,Улучшить время загрузки IMA

SDK IMA загружает зависимости для запроса рекламы, измерения видимости и составления отчетов о показах рекламы. Инициализация IMA до запроса рекламы позволяет максимально увеличить время загрузки зависимостей IMA до воспроизведения рекламы. На этой странице описано, как обрабатывать время загрузки IMA в вашем приложении.

Вызовите метод ImaSdkFactory.initialize()

Метод ImaSdkFactory.initialize() начинает предварительную загрузку ресурсов SDK до первого запроса рекламы. Для использования initialize() необходима версия IMA 3.35.1 или выше.

Вызывайте метод ImaSdkFactory.initialize() при запуске приложения или на самом раннем этапе жизненного цикла приложения, насколько это позволяет структура вашего приложения. Вызов initialize() принимает следующие параметры:

  • context : Использует контекст приложения, который всегда доступен на протяжении всего жизненного цикла приложения.
  • settings : Передайте объект ImaSdkSettings с заданными значениями. Настройки IMA, используемые в вызове initialize() должны совпадать со значениями настроек, используемыми в вызове createAdsLoader() . SDK IMA использует эти настройки, в частности, настройку языка, в качестве ключа кэша. Мы не рекомендуем использовать тестовые или фиктивные значения для настроек, используемых в вызове метода initialize() , поскольку это может привести к промахам кэша и увеличению времени загрузки рекламы.

Повторно используйте экземпляр AdsLoader .

Для сокращения времени загрузки IMA-файлов мы рекомендуем повторно использовать один и тот же экземпляр AdsLoader . Интерфейс AdsLoader может обрабатывать несколько запросов рекламы или потоковой передачи. Избегайте создания нового экземпляра AdsLoader для каждого запроса. Создание нового экземпляра AdsLoader требует времени загрузки и использует дополнительные ресурсы устройства.

Запросить показ рекламы до начала воспроизведения

Если у вас есть доступ к экземпляру AdsLoader до начала воспроизведения рекламы, вы также можете вызвать метод AdsLoader.requestAds() заранее. Этот вызов запускает загрузку прероллов. Когда пользователь будет готов начать воспроизведение контента, вызовите метод AdsManager.init() и дождитесь события LOADED , чтобы начать воспроизведение рекламы.