iOS 对接MAX聚合SDK

1. 流程概述

对接MAX聚合SDK的整体流程如下:

  1. 集成MAX聚合SDK:下载并导入MAX聚合SDK到项目中。
  2. 配置应用信息:在工程文件中配置应用信息,包括App Key、App Secret等。
  3. 初始化SDK:在应用启动时初始化MAX聚合SDK。
  4. 请求广告:根据需求在适当的时机请求广告。
  5. 处理广告回调:处理广告的加载、展示、关闭等回调。
  6. 相关功能扩展:如果需要使用Native广告、插屏广告等特殊功能,需进行相应扩展。

下面将逐步介绍每一步需要做什么以及需要使用的代码。

2. 集成MAX聚合SDK

首先,你需要从MAX聚合SDK官方网站下载最新版本的SDK,并将其导入到你的项目中。可以通过CocoaPods或手动导入的方式进行集成。

通过CocoaPods集成

在你的Podfile文件中添加以下代码:

pod 'MAX', '~> 4.0'

然后执行以下命令安装SDK:

pod install

手动导入集成

  1. 下载最新版本的MAX聚合SDK,并解压缩。
  2. 将SDK中的MAX.framework文件拖动到你的项目中。
  3. 选择"Copy items if needed"选项,确保将文件复制到你的项目目录中。

3. 配置应用信息

在你的工程文件中配置应用信息,包括App Key、App Secret等。这些信息可在MAX聚合SDK官方网站获取。

在你的工程中的AppDelegate.m文件中,添加以下代码(注意替换为你的App Key和App Secret):

#import <MAX/MaxAdSDK.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // 初始化MAX聚合SDK
    [MaxAdSDK initWithAppKey:@"Your App Key" appSecret:@"Your App Secret"];
    
    // ...
    
    return YES;
}

4. 初始化SDK

在应用启动时,需要初始化MAX聚合SDK。在上一步的代码中已经完成了初始化操作。

5. 请求广告

根据你的需求,在适当的时机请求广告。例如,在一个ViewController的视图加载完成后,可以请求一个横幅广告。

#import <MAX/MaxAdSDK.h>

@interface YourViewController : UIViewController <MaxRewardedAdDelegate>

@property (nonatomic, strong) MaxRewardedAd *rewardedAd;

@end

@implementation YourViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    // 创建一个横幅广告
    self.rewardedAd = [[MaxRewardedAd alloc] initWithAdUnitId:@"Your Ad Unit ID"];
    self.rewardedAd.delegate = self;
    
    // 请求广告
    [self.rewardedAd loadAd];
}

#pragma mark - MaxRewardedAdDelegate

- (void)rewardedAdDidLoad:(MaxRewardedAd *)rewardedAd {
    // 广告加载成功,可以展示广告
}

- (void)rewardedAd:(MaxRewardedAd *)rewardedAd didFailWithError:(NSError *)error {
    // 广告加载失败,处理错误
}

// ...

6. 处理广告回调

在请求广告时,需要提供一个实现了相应协议的对象,并处理广告的加载、展示、关闭等回调。

#import <MAX/MaxAdSDK.h>

@interface YourViewController : UIViewController <MaxRewardedAdDelegate>

@property (nonatomic, strong) MaxRewardedAd *rewardedAd;

@end

@implementation YourViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    // 创建一个横幅广告
    self.rewardedAd = [[MaxRewardedAd alloc] initWithAdUnitId:@"Your Ad Unit ID"];
    self.rewardedAd.delegate = self;
    
    // 请求广告
    [self.rewardedAd loadAd];
}

#pragma mark - MaxRewardedAdDelegate

- (void)rewardedAdDidLoad:(MaxRewardedAd *)rewardedAd {
    // 广告加载成功,可以展示广告
    if ([self.rewardedAd isReady]) {
        [self.rewardedAd presentFromRootViewController:self];
    }
}

- (void)rewardedAd:(MaxRewardedAd *)rewardedAd didFailWithError:(NSError *)error