Xcode
进入GDT官网,下载好GTD的集成开发包,放置在桌面上,可以查看到包含.h相关的文件和.a静态库文件,如下:
将GDT文件夹拖动到我们的项目工程中,勾选Copy items if needed和Create groups,导入到工程中显示如下:
现在设置开屏广告,在Appdelegate中导入GDTSplashAd.h头文件,GDTSplashAd是专门处理开屏广告的类,导入头文件,遵循GDTSplashAdDelegate代理,如下:
调用的方法,在这里封装成单独的方法方便调用,如下:GDTSplashAd *splashAD = [[GDTSplashAd alloc] initWithAppkey:@'11' placementId:@'90407']; splashAD.delegate = self; if ([[UIScreen mainScreen] bounds].size.height >= 568.0f) { splashAD.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@'icon_bg']]; } else { splashAD.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@'icon_bg']]; } splashAD.fetchDelay = 3; self.bottomView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, [[UIScreen mainScreen] bounds].size.width, 100)]; UIImageView *logo = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@'icon_nodata']]; [self.bottomView addSubview:logo]; logo.center = self.bottomView.center; self.bottomView.backgroundColor = [UIColor whiteColor]; [splashAD loadAdAndShowInWindow:self.window withBottomView:self.bottomView]; self.splash = splashAD;
代理方法包含整个APP广告的加载,渲染显示到消失整个过程,例如-(void)splashAdSuccessPresentScreen:(GDTSplashAd *)splashAd表示广告成功加载渲染,我们可以在需要的过程中处理我们需要的逻辑,具体方法如下:
另外还有我们经常使用的模板广告,具体的实现方法在GDTNativeExpressAd.h和GDTNativeExpressAdView.h中,我们导入其头文件到指定使用的.m文件中,遵循GDTNativeExpressAdDelegete代理,如下:
在模板广告与开屏广告区别在于,模板广告预先我们需要设定专门的广告位,也就是广告显示的View视图。在界面加载的时候预先实例化,并且指定需要加载的广告条数,如下:
在代理方法里面,我们主要注重两个方法,广告拉取成功和广告拉取失败,在拉取成功之后,我们需要根据指定View去将广告信息渲染到View上,如下:- (void)nativeExpressAdSuccessToLoad:(GDTNativeExpressAd *)nativeExpressAd views:(NSArray<__kindof GDTNativeExpressAdView *> *)views{ if (views.count) { GDTNativeExpressAdView *expressView = views[0]; expressView.frame = CGRectMake(0, SCREEN_HEIGHT - 60, SCREEN_WIDTH, 60); expressView.controller = self; [expressView render]; [self.view addSubview:expressView]; }}
模板广告还拥有其他代理方法,在指定的条件下会触发相关的方法,具体如下: