Это руководство содержит инструкции по переопределению расписания рекламной паузы по умолчанию и настройке собственного времени воспроизведения. При использовании ручного воспроизведения рекламной паузы SDK генерирует событие AD_BREAK_READY после загрузки рекламной паузы и ожидает начала её воспроизведения.
Предпосылки
Приложение для Android с реализованным IMA SDK.
Настройка ручного воспроизведения рекламной паузы
Чтобы настроить ручное воспроизведение рекламной паузы:
Сообщите SDK, что вы хотите управлять воспроизведением рекламной паузы.
Прослушивайте событие AD_BREAK_READY.
Дайте SDK команду воспроизвести рекламу, когда будете готовы.
В приведенном ниже фрагменте показаны изменения, которые необходимо внести в расширенный пример для реализации ручного воспроизведения рекламной паузы.
publicVideoPlayerController(Contextcontext,VideoPlayerWithAdPlaybackvideoPlayerWithAdPlayback,ViewplayButton,ViewplayPauseToggle,Stringlanguage,ViewGroupcompanionViewGroup,Loggerlog){...sdkFactory=ImaSdkFactory.getInstance();ImaSdkSettingsimaSdkSettings=sdkFactory.createImaSdkSettings();imaSdkSettings.setLanguage(language);// Tell the SDK you want to control ad break playback.imaSdkSettings.setAutoPlayAdBreaks(false);...}...@OverridepublicvoidonAdEvent(AdEventadEvent){...switch(adEvent.getType()){// Listen for the AD_BREAK_READY event.caseAD_BREAK_READY:// Tell the SDK to play ads when you're ready. To skip this ad break,// simply return from this handler without calling adsManager.start().adsManager.start();break;...}
Часто задаваемые вопросы
Требуется ли ручное воспроизведение рекламы для реализации IMA SDK?
Нет. Ручное воспроизведение рекламы — дополнительная функция для издателей, которые не хотят, чтобы IMA SDK автоматически воспроизводил рекламные паузы в соответствии с расписанием правила показа рекламы или ответа VMAP.
[null,null,["Последнее обновление: 2025-08-29 UTC."],[[["\u003cp\u003eThis guide explains how to manually control ad break playback timing in your Android app using the IMA SDK.\u003c/p\u003e\n"],["\u003cp\u003eBy disabling autoplay and listening for the \u003ccode\u003eAD_BREAK_READY\u003c/code\u003e event, you can trigger ad breaks at your desired moments.\u003c/p\u003e\n"],["\u003cp\u003eThis feature is optional and provides flexibility for publishers who need custom ad playback control beyond the default ad schedule.\u003c/p\u003e\n"],["\u003cp\u003eThe Advanced Example showcases the implementation, but the Basic Example with the Exoplayer-IMA extension cannot be used as a basis for this guide.\u003c/p\u003e\n"]]],[],null,["Select platform: [Android](/interactive-media-ads/docs/sdks/android/client-side/manual_ad_playback \"View this page for the Android platform docs.\") [iOS](/interactive-media-ads/docs/sdks/ios/client-side/manual_ad_playback \"View this page for the iOS platform docs.\")\n\n\u003cbr /\u003e\n\nThis guide provides instructions on overriding the default ad break schedule and\nconfiguring your own ad break playback timings. When manual ad break playback is\nimplemented, the SDK fires an `AD_BREAK_READY` event when an ad break has\nloaded, and waits on you to start the break's playback.\n\nPrerequisites\n\n- An Android application with the IMA SDK implemented.\n\nConfiguring manual ad break playback\n\nTo configure manual ad break playback:\n\n1. Tell the SDK you want to control ad break playback.\n2. Listen for the AD_BREAK_READY event.\n3. Tell the SDK to play ads when you're ready.\n\nThe snippet below shows the modifications required to the\n[Advanced Example](//github.com/googleads/googleads-ima-android/tree/main/AdvancedExample)\nto implement manual ad break playback.\n**Key Point:** The [Basic Example](//github.com/googleads/googleads-ima-android/tree/main/basicexample) implements the [Exoplayer-IMA extension](//github.com/google/ExoPlayer/tree/release-v2/extensions/ima) which handles the setup of ImaSdkSettings and AdEvents. Because of this, the Basic Example is not able to be used as a starting point for this guide. \n\n```carbon\npublic VideoPlayerController(\n Context context,\n VideoPlayerWithAdPlayback videoPlayerWithAdPlayback,\n View playButton,\n View playPauseToggle,\n String language,\n ViewGroup companionViewGroup,\n Logger log) {\n ...\n \n sdkFactory = ImaSdkFactory.getInstance();\n ImaSdkSettings imaSdkSettings = sdkFactory.createImaSdkSettings();\n imaSdkSettings.setLanguage(language);\n // Tell the SDK you want to control ad break playback.\n imaSdkSettings.setAutoPlayAdBreaks(false);\n \n ...\n}\n...\n@Override\npublic void onAdEvent(AdEvent adEvent) {\n ...\n switch (adEvent.getType()) {\n // Listen for the AD_BREAK_READY event.\n case AD_BREAK_READY:\n // Tell the SDK to play ads when you're ready. To skip this ad break,\n // simply return from this handler without calling adsManager.start().\n adsManager.start();\n break;\n ...\n}\n```\n\nFAQ\n\nIs manual ad playback required for an IMA SDK implementation?\n: No. manual ad playback is an optional feature for publishers who\n don't want the IMA SDK to automatically play ad breaks as scheduled by an ad\n rule or VMAP response."]]