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

IMA SDK загружает зависимости для запроса рекламы, измерения видимости и отчётности о показах рекламы. Инициализируя 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.requestAds() заранее. Этот вызов запускает загрузку рекламы в начале ролика. Когда пользователь будет готов начать воспроизведение контента, вызовите метод AdsManager.init() и дождитесь события LOADED , чтобы начать воспроизведение рекламы.