SDK数据接口使用指南

1. 简介:

数据接口适用范围: 轮播图(HeadlineView), 开屏(Splash), 信息流(Feeds)

2. 典型应用场景

  • Step1: 创建用于获取创意数据的实例

在对应的文件中 #import “MMUNativePromoterManager.h”

_mPromoterManager = [[MMUNativePromoterManager alloc]  initWithSlotId:@"22030713" layoutType:MMULayoutTypeFeeds];
_mPromoterManager.delegate = (id<MMUNativePromoterManagerDelegate>)self;
  • Step2: 请求创意数据
[_mPromoterManager requestPromoterDataInBackground];
  • Step3: 通过回调事件获取创意数据
- (void)promoterManager:(MMUNativePromoterManager *)manager didLoadDataFinishedWithPromoters:(MMUMamaResponse *)response
{
NSArray *creatives = [response creatives]; // 创意数据
}
  • Step4: 创意被展现时,调用处理创意展现的接口
[_mPromoterManager sendImpressionReportForPromoters:shownPromoters fromResponse:self.mResponse];
  • Step5: 创意被点击时,调用处理创意点击的接口
[_mPromoterManager didClickedPromoter:clickedPromoter fromResponse:self.mResponse];
  • Step6: 自定义事件的上报
[_mPromoterManager sendCustomEvent:romoter withEventId:@"Your event ID" data:@"Your data"];

目前自定义事件主要用于视频创意播放事件的上报,描述如下:

时间ID 对应的data 描述
1001 用户自定义附加信息 手动播放事件
1002 用户自定义附加信息 播放开始事件
1003 用户自定义附加信息 播放中止事件
6 用户自定义附加信息 播放结束事件

3.数据结构说明:

  • MMUMamaResponse
- (nonnull NSArray<MMUMamaPromoter *> *)creatives; // 创意列表
- (nonnull NSDictionary *)settings; // 创意展现相关的一些控制信息
- (nullable NSDictionary *)azSettings; // 推广位相关的一些信息
- (nullable NSDictionary *)platformInfo; // 针对特定平台描述信息

-(NSDictionary*)platformInfo返回结构 如下:

字段名 类型 描述
addInfo dict 第三方平台的数据信息
name string 平台名字
type string 平台编号
  • MMUMamaPromoter
@property (nonatomic, readonly, copy) NSString *promoterId; // 创意ID
- (NSDictionary *)materials; // 创意元信息,key会根据创意所属的模板类型有所变化
- (NSDictionary*)effects; //创意效果配置信息
- (NSDictionary *)providerInfo; //创意广告商、角标信息

-(NSDictionary*)effects 如下:

字段名 类型 描述 注释
play_type int 自动播放方式 1.手动播放;2.自动播放;3.仅WiFi自动播放
duration int 显示时长 单位:秒。例:开屏图片创意显示时长、等等

-(NSDictionary*)providerInfo 如下:

字段名 类型 描述 注释
name string 广告商名称
icon dict 广告商角标信息 --

其中icon结构如下:

字段名 类型 描述 注释
icsz dict 角标尺寸
iccu string 角标点击地址
icu string 角标地址
icpos int 角标位置 -1: 未设置 0: 未启用 1: 左上角 2: 左下角 3: 右上角 4: 右下角 5: 不限定

其中icsz结构如下:

字段名 类型 描述 注释
width int 角标宽
height int 角标高 --

4.templateType说明:

不同的渲染模板,对应的 MMUMamaPromoter 中的 materials 信息会有差异,具体的映射关系为:

templateType = 1
字段名 类型 是否必填 描述
title string N 标题描述
price string N 原价
promoprice string N 折扣价
sell string N 销量
img_url string Y 图片地址

渲染示例

templateType = 2
字段名 类型 是否必填 描述
title string Y 标题描述
sub_title string Y 副标题
img_url string Y 图片地址

渲染示例

templateType = 3
字段名 类型 是否必填 描述
title string Y 标题描述
img_url string Y 图片地址

渲染示例

templateType = 9
字段名 类型 是否必填 描述
title string Y 标题描述
price string N 原价
promoprice string N 折扣价
sell string N 销量
img_url string Y 图片地址

渲染示例

templateType = 10
字段名 类型 是否必填 描述
price string Y 标题
video_url string Y 视频地址
img_url string Y 图片地址

渲染示例

templateType = 11
字段名 类型 是否必填 描述
title string Y 标题
video_url string Y 视频地址
img_url string Y 图片地址

渲染示例

templateType = 0

动态模板,因为模板中的字段都是在网站端个性化定制的,所以,UI渲染和点击的处理需要您自行完成。

注:SDK的接口调用与模板类型无关,必须按照Part2部分严格执行,否则事件统计会有遗漏

5.Settings说明:

焦点图样式
字段名 类型 描述 注释
dt int 展示时间 display time
开屏样式
字段名 类型 描述 注释
dt int 展示时间 displayTime
ec int 允许点击 enalbe click
esc int 允许点击跳过 enable skip click

6.azSettings说明:

焦点图样式
字段名 类型 描述 注释
fridx int 创意帧在焦点图中的位置 只有在单帧管理时返回

7.其它说明:

  • 媒体自定义标签
媒体自定义的标签可以通过 MMUNativePromoterManager 实例的 mTags 属性回传
@property (nonatomic, copy) NSString *mTags; // 当前用户的标签信息
格式:属性:标签1,标签2,... 多组属性用分号隔开
  • 数据流调试
SDK支持数据流调试功能,开启该功能后,即可通过console查看SDK数据加载过程中主要节点的状态信息,方便排查数据加载问题。该功能默认为关闭(建议仅在debug状态下开启)
@property (nonatomic, assign) MMULogLevel logLevelMask; 

开启示例:
#ifdef DEBUG // 建议仅在debug模式下开启
[MMUSDK sharedInstance].logLevelMask = MMULogoLevelInfo;
#endif
  • 特例说明
受百度信息流SDK使用方式限制,对于百度SDK返回的数据,目前尚不支持完  全自定义UI,UI渲染这块需要基于百度提供的view做进一步的开发,有一定的额外开发工作,需要您根据我们返回的平台信息做区分处理,详情请参考SDK中的Demo
NSNumber *platformType = [response.platformInfo objectForKey:@"type"];
if (MMUAdNetworkTypeBaiduMobAd == [platformType integerValue]) //判断平台类型
{
//百度
}
powered by Gitbook该文件修订时间: 2016-12-06 10:18:08