AI-generated Key Takeaways
-
IMAAdsLoader requests ads from the ad server and uses a delegate to receive loaded ads or errors.
-
The
settings
property provides SDK-wide settings that are evaluated during initialization. -
The
delegate
property sets the object that receives IMAAdsLoaderDelegate callbacks. -
sdkVersion
is a class method that returns the current SDK version. -
You can initialize IMAAdsLoader with default settings or specific IMASettings.
-
The
requestAdsWithRequest:
method requests ads using an IMAAdsRequest object. -
The
requestStreamWithRequest:
method requests a stream with dynamically inserted ads using an IMAStreamRequest object. -
The
contentComplete
method signals the SDK that the content has finished, which can trigger post-roll ads.
IMAAdsLoader
@interface IMAAdsLoader : NSObject
The IMAAdsLoader class allows the requesting of ads from the ad server. Use the delegate to receive the loaded ads or loading error in case of failure.
-
SDK-wide settings. Note that certain settings will only be evaluated during initialization of the adsLoader.
Declaration
Swift
@NSCopying var settings: IMASettings { get }
Objective-C
@property (nonatomic, copy, readonly) IMASettings *_Nonnull settings;
-
Delegate that receives IMAAdsLoaderDelegate callbacks.
Declaration
Swift
weak var delegate: (any IMAAdsLoaderDelegate)? { get set }
Objective-C
@property (nonatomic, weak, nullable) id<IMAAdsLoaderDelegate> delegate;
-
Returns the SDK version.
Declaration
Swift
class func sdkVersion() -> String
Objective-C
+ (nonnull NSString *)sdkVersion;
Return Value
the SDK version
-
Initializes an IMAAdsLoader with specific settings. The loader takes 1-2 seconds to setup once initialized, therefore reusing a single instance of the ads loader is encouraged to minimize ad request times.
Declaration
Swift
init(settings: IMASettings?)
Objective-C
- (nonnull instancetype)initWithSettings:(nullable IMASettings *)settings;
Parameters
settings
the IMASettings to use for SDK wide settings. Uses defaults when nil.
Return Value
an IMAAdsLoader instance with given IMASettings
-
Initializes the IMAAdsLoader with default settings. The loader takes 1-2 seconds to setup once initialized, therefore reusing a single instance of the ads loader is encouraged to minimize ad request times.
Declaration
Swift
init()
Objective-C
- (nonnull instancetype)init;
Return Value
an IMAAdsLoader instance with default IMASettings
-
Request ads from the ad server. The loader takes 1-2 seconds to setup on init and become ready to make ad requests. So reusing the same IMAAdsLoader instance is encouraged when making ad requests in order to minimize ad request times.
Declaration
Swift
func requestAds(with request: IMAAdsRequest)
Objective-C
- (void)requestAdsWithRequest:(nonnull IMAAdsRequest *)request;
Parameters
request
the IMAAdsRequest. If it was created for use with Picture-in-Picture, this IMAAdsLoader instance’s IMASettings must have backround playback enabled
-
Request a stream with ads inserted dynamically. Reusing the same IMAAdsLoader instance is encouraged when making stream requests in order to minimize stream request latency.
Declaration
Swift
func requestStream(with request: IMAStreamRequest)
Objective-C
- (void)requestStreamWithRequest:(nonnull IMAStreamRequest *)request;
Parameters
request
the stream request
-
Signal to the SDK that the content has completed. The SDK will play post-rolls at this time, if any are scheduled.
Declaration
Swift
func contentComplete()
Objective-C
- (void)contentComplete;