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, чтобы начать показ рекламы.