# 5.原生(信息流)广告

# 导入头文件

集成native广告,需要导入以下头文件:

#import <FNADSDK/FNADSDK.h>
1

子视图和协议 信息流视图需继承FNNativeView并实现FNNativeRendering协议来自定义视图布局。

# 请求广告

请求广告时,需传入对应的代理对象,用来处理广告加载完成后的展示及其他操作。

/**
加载Native广告
@param placementID 广告位ID
@param delegate 委托对象
@param size 请求广告大小
*/
-(void) loadADWithPlacementID:(NSString *)placementID
          delegete:(id<FNNativeADDelegate>)delegate
            size:(CGSize)size;
1
2
3
4
5
6
7
8
9

# 请求广告回调

//加载完成
-(void) didFinishLoadingNativeAD;
//加载失败
-(void) didFailToLoadNativeADWithError:(NSError *)error;
1
2
3
4

# 判断广告是否可以展示

/**
判断native广告是否已准备并可以展示
*/
-(BOOL)isNativeADReady;
1
2
3
4

# 获取native广告视图

判断广告是否已经已准备,然后调用展示方法展示视频广告;如果未准备好,则放弃这次视频展示机会并等待或重新加载。

获取到native广告视图后可自定义添加位置和大小。

/**
获取Native广告视图
@param rootViewController 要添加广告视图的控制器
@param rect 要添加广告视图位置和大小
@param className 信息流自定义view类名
*/
-(UIView *)nativeViewWithRootViewController:(UIViewController *)rootViewController rect:(CGRect)rect className:(NSString *)className;
1
2
3
4
5
6
7

# 展示广告回调

//广告被点击
-(void) didClickNativeAD;
//广告已展示
-(void) didShowNativeAD;
1
2
3
4