Surveiller les événements de mise en mémoire tampon des annonces
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
SDK Interactive Media Ads (IMA) pour iOS.
Ce guide explique comment agir en fonction de l'état de mise en mémoire tampon des annonces.
Utiliser des événements de mémoire tampon dans votre application
Vous pouvez utiliser les méthodes de délégué suivantes sur IMAAdsManagerDelegate
pour ajouter un indicateur d'activité à votre application lorsque les annonces sont mises en pause pour la mise en mémoire tampon :
- (void)adsManagerAdDidStartBuffering(IMAAdsManager *)adsManager
: appelé lorsqu'une annonce qui a déjà commencé à être lue s'arrête pour mettre en mémoire tampon.
- (void)adsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime
:
Appelé en tant que tampons d'annonce. Cette méthode est appelée à plusieurs reprises tant qu'une annonce est en mémoire tampon.
- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager
: appelé lorsque l'annonce actuelle est suffisamment mise en mémoire tampon pour que sa lecture ne risque pas de dépasser le tampon.
Exemple
Tous les ajouts sont basés sur l'exemple avancé du SDK IMA (pour iOS et tvOS) :
@interface VideoViewController () <IMAAdsManagerDelegate,...>
...
@end
@implementation VideoViewController
...
- (void)adsManagerAdDidStartBuffering:(IMAAdsManager *)adsManager {
// Show your activity indicator above the video player - ad playback has
// stopped to buffer.
}
- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager {
// Hide your activity indicator - as playback resumes.
}
Questions fréquentes
Puis-je afficher un indicateur d'activité avant la lecture de mon annonce ?
Oui, mais nous vous recommandons d'utiliser différentes méthodes de délégué pour ce cas d'utilisation. Vous pouvez afficher l'indicateur d'activité lorsque vous appelez [adsManager start]
et le masquer lorsque vous capturez kIMAAdEvent_STARTED
dans - (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event
.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/31 (UTC).
[null,null,["Dernière mise à jour le 2025/08/31 (UTC)."],[[["\u003cp\u003eThis guide explains how to utilize ad buffer events to implement an activity indicator in your app, enhancing user experience during ad playback.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can use the \u003ccode\u003eIMAAdsManagerDelegate\u003c/code\u003e methods to trigger actions like showing and hiding an activity indicator based on the ad's buffering state.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eadsManagerAdDidStartBuffering\u003c/code\u003e, \u003ccode\u003eadsManagerAdPlaybackReady\u003c/code\u003e, and \u003ccode\u003eadsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime\u003c/code\u003e methods provide signals for managing the activity indicator during buffering.\u003c/p\u003e\n"],["\u003cp\u003eWhile you can show an activity indicator before ad playback, using delegate methods specific to ad start events is recommended for that scenario.\u003c/p\u003e\n"]]],[],null,["# Monitor ad buffering events\n\nInteractive Media Ads (IMA) SDK for iOS.\n\nThis guide explains how to take action based on ad buffering state.\n\nUsing buffer events in your app\n-------------------------------\n\nYou can use the following delegate methods on `IMAAdsManagerDelegate` to add an\nactivity indicator to your app when ads pause to buffer:\n\n- `- (void)adsManagerAdDidStartBuffering(IMAAdsManager *)adsManager`: Called when an ad that already started playing has stopped to buffer.\n- `- (void)adsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime`: Called as an ad buffers. This method is called repeatedly as long as an ad is buffering.\n- `- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager`: Called when the current ad is sufficiently buffered such that ad playback is not likely to outrun the buffer.\n\n### Example\n\nAll additions are based on the\n[IMA SDK Advanced Sample](//github.com/googleads/googleads-ima-ios/tree/master/Objective-C/AdvancedExample)\n(for both iOS and tvOS): \n\n```objective-c\n @interface VideoViewController () \u003cIMAAdsManagerDelegate,...\u003e\n\n ...\n\n @end\n\n @implementation VideoViewController\n\n ...\n\n - (void)adsManagerAdDidStartBuffering:(IMAAdsManager *)adsManager {\n // Show your activity indicator above the video player - ad playback has\n // stopped to buffer.\n }\n\n - (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager {\n // Hide your activity indicator - as playback resumes.\n }\n```\n\nFAQ\n---\n\n### Can I show an activity indicator before my ad starts playing?\n\nYes, but we recommend relying on different delegate methods for that\nuse case. You can show the activity indicator when you call `[adsManager start]`,\nand hide the activity indicator when you catch `kIMAAdEvent_STARTED` in\n`- (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event`."]]