| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 | 
							- //
 
- //  MAAdapter.h
 
- //  AppLovinSDK
 
- //
 
- //  Created by Thomas So on 8/10/18.
 
- //  Copyright © 2019 AppLovin Corporation. All rights reserved.
 
- //
 
- #import <AppLovinSDK/MAAdapterInitializationParameters.h>
 
- #import <AppLovinSDK/MAAdFormat.h>
 
- NS_ASSUME_NONNULL_BEGIN
 
- /**
 
-  * An enum describing the adapter's initialization status.
 
-  */
 
- typedef NS_ENUM(NSInteger, MAAdapterInitializationStatus)
 
- {
 
-     /**
 
-      * The adapter is not initialized. Note: networks need to be enabled for an ad unit id to be initialized.
 
-      */
 
-     MAAdapterInitializationStatusAdapterNotInitialized = -4,
 
-     
 
-     /**
 
-      * The 3rd-party SDK does not have an initialization callback with status.
 
-      */
 
-     MAAdapterInitializationStatusDoesNotApply = -3,
 
-     
 
-     /**
 
-      * The 3rd-party SDK is currently initializing.
 
-      */
 
-     MAAdapterInitializationStatusInitializing = -2,
 
-     
 
-     /**
 
-      * The 3rd-party SDK explicitly initialized, but without a status.
 
-      */
 
-     MAAdapterInitializationStatusInitializedUnknown = -1,
 
-     
 
-     /**
 
-      * The 3rd-party SDK initialization failed.
 
-      */
 
-     MAAdapterInitializationStatusInitializedFailure = 0,
 
-     
 
-     /**
 
-      * The 3rd-party SDK initialization was successful.
 
-      */
 
-     MAAdapterInitializationStatusInitializedSuccess = 1
 
- };
 
- /**
 
-  * This protocol defines a mediation adapter which wraps a third-party ad SDK and will be used by AppLovin to load and display ads.
 
-  */
 
- @protocol MAAdapter <NSObject>
 
- /**
 
-  * Initialize current adapter. This method will be called at the beginning of the adapter lifecycle.
 
-  *
 
-  * @param parameters        Parameters passed from the server.
 
-  * @param completionHandler Completion block to be called when the 3rd-party SDK finishes initialization, whether or not it was successful.
 
-  */
 
- - (void)initializeWithParameters:(id<MAAdapterInitializationParameters>)parameters withCompletionHandler:(void(^)(void))completionHandler;
 
- /**
 
-  * The version of the third-party SDK.
 
-  */
 
- @property (nonatomic, copy, readonly) NSString *SDKVersion;
 
- /**
 
-  * The version of this adapter.
 
-  */
 
- @property (nonatomic, copy, readonly) NSString *adapterVersion;
 
- /**
 
-  * Whether or not this adapter is a beta version.
 
-  */
 
- @property (nonatomic, assign, readonly, getter=isBeta) BOOL beta;
 
- /**
 
-  * *********************
 
-  * AVAILABLE IN v11.9.0+
 
-  * *********************
 
-  * <p>
 
-  * Whether or not to initialize the third-party SDK on main thread.
 
-  *
 
-  * @return @c 1 if the SDK should be initialized on main thread. @c nil if we should fallback to using the adapter spec level setting.
 
-  */
 
- - (nullable NSNumber *)shouldInitializeOnMainThread;
 
- /**
 
-  * *********************
 
-  * AVAILABLE IN v11.9.0+
 
-  * *********************
 
-  * <p>
 
-  * Whether or not to collect signals on main thread.
 
-  *
 
-  * @return @c 1 if the SDK should collect signals on main thread. @c nil if we should fallback to using the adapter spec level setting.
 
-  */
 
- - (nullable NSNumber *)shouldCollectSignalsOnMainThread;
 
- /**
 
-  * *********************
 
-  * AVAILABLE IN v11.9.0+
 
-  * *********************
 
-  * <p>
 
-  * Whether or not to load ads on main thread.
 
-  *
 
-  * @param adFormat The @c MAAdFormat for which to check if we should load on main thread.
 
-  *
 
-  * @return @c 1 if the given ad format should be loaded on main thread. @c nil if we should fallback to using the adapter spec level setting.
 
-  */
 
- - (nullable NSNumber *)shouldLoadAdsOnMainThreadForAdFormat:(MAAdFormat *)adFormat;
 
- /**
 
-  * *********************
 
-  * AVAILABLE IN v11.9.0+
 
-  * *********************
 
-  * <p> 
 
-  * Whether or not to show ads on main thread.
 
-  *
 
-  * @param adFormat The @c MAAdFormat for which to check if we should show on main thread.
 
-  *
 
-  * @return @c 1 if the given ad format should be loaded on main thread. @c nil if we should fallback to using the adapter spec level setting.
 
-  */
 
- - (nullable NSNumber *)shouldShowAdsOnMainThreadForAdFormat:(MAAdFormat *)adFormat;
 
- /**
 
-  * This method is called when an ad associated with this adapter should be destroyed. Necessary cleanup should be performed here.
 
-  */
 
- - (void)destroy;
 
- @optional
 
- /**
 
-  * Initialize current adapter. This method will be called at the beginning of the adapter lifecycle.
 
-  *
 
-  * @param parameters        Parameters passed from the server.
 
-  * @param completionHandler Completion block to be called when the 3rd-party SDK finishes initialization, with the initialization status passed in.
 
-  */
 
- - (void)initializeWithParameters:(id<MAAdapterInitializationParameters>)parameters completionHandler:(void(^)(MAAdapterInitializationStatus initializationStatus, NSString *_Nullable errorMessage))completionHandler;
 
- @end
 
- NS_ASSUME_NONNULL_END
 
 
  |