iOS Data SDK文档

一  SDK 概要

YLDataSDK为移动应用提供内容分发功能,为客户提供较为简洁的API接口,方便第三方应用快速的集成并实现内容分发功能。

DataSDK提供的功能如下:

  • 获取频道列表
  • 获取频道下视频列表
  • 相关视频列表
  • 视频详情
  • 视频展现上报
  • 视频播放上报

二  SDK 类

一览Data SDK主要提供了以下类:

  • YLInit:整个SDK的主入口,单例,主要提供初始化,配置用户信息。
  • YLVideo: 单例,加载频道列表、视频列表的功能
  • YLReport: 单例,用于用户行为和视频上报

三  添加SDK到工程中

  • 最低支持系统: iOS 8.0
  • OC项目
  • 在finder里, 把YLDataSDK.framework文件拖到项目的某目录

  • 在XCode里, 把YLDataSDK.framework文件加到项目文件列表中

  • 在XCode的target配置->General->Linked Frameworks and Libraries中添加YLDataSDK.framework

  • 如果项目中没有swift文件及桥接文件, 需添加一个空swift文件并自动生成一个桥接文件

  • 在需要使用的文件中添加引用:

        #import <YLDataSDK/YLDataSDK-Swift.h>
  • Swift项目
  • 在finder里, 把YLDataSDK.framework文件拖到项目的某目录

  • 在XCode里, 把YLDataSDK.framework文件加到项目文件列表中

  • 在XCode的target配置->General->Linked Frameworks and Libraries中添加YLDataSDK.framework

  • 在需要使用的文件中添加引用:

    import YLDataSDK

四  初始化

在程序刚启动时, 调一览SDK其他功能之前,调初始化代码。

  • 代码示例
[YLInit.shared setAccessKey:@"xxx" token:@"yyy" sid:@"zzz" uid:@"111"];
  • 参数说明
参数 类型 描述 必传
key String 设置key,key由一览提供
token String 设置token,token由一览提供
sid String 设置渠道号,sid
uid String 为了获取更加准确的跨平台的个性化推荐内容,鼓励用户配置应用的唯一userId

五  数据请求

  • 对应类: YLVideo

1.请求频道列表数据

  • 方法说明
/**
* 获取所有频道列表
*
* @param callback 网络请求回调: 参数1-网络请求成功, 参数2-频道列表
*/
- (void)getChannelsWithCallback:(void (^)(BOOL, NSArray<YLChannelModel *> *))callback;

单个频道的数据模型YLChannelModel各字段含义如下:

名称 类型 描述
id String 频道id
name String 频道名称

2.请求频道下视频列表

  • 方法说明
/**
* 请求频道视频列表
*
* @param channelId 频道id
* @param loadType  加载方式:YLFeedLoadTypePullUp=0上拉加载更多 YLFeedLoadTypePullDown=1非首次下拉刷新时 YLFeedLoadTypeFirst=2首次刷新某个频道
* @param callback  回调: 参数1-网络请求成功, 参数2-视频列表
*/
- (void)getFeedListWithChannelId:(NSString *)channelId loadType:(enum YLFeedLoadType)loadType callback:(void (^)(BOOL, NSArray<YLFeedModel *> *))callback;

单个视频的数据模型YLFeedModel各字段含义如下:

名称 类型 描述
log_id String 推荐id
video_id String 视频id
title String 视频名称
tags String 视频标签,格式 "热血长安, 默剧, 恶搞"
category String 所属频道id
h5_url String h5打开地址
image String 封面图
duration long 时长,单位 s
provider Provider 内容提供者
publish_date String 视频生成时间,格式:"2018-01-01 12:00:00"
video_w int 视频宽
video_h int 视频高
play_num int 视频播放数
like_num int 喜欢数
create_time long 视频生产时间
update_time long 视频更新时间

3. 相关视频列表(常规播放页)

  • 方法说明
/**
* 获取某视频的相关视频列表
*
* @param videoId 视频ID
* @param callback 网络请求回调: 参数1-网络请求成功, 参数2-视频列表
*/
- (void)getRelationListWithVideoId:(NSString *)videoId callback:(void (^)(BOOL, NSArray<YLFeedModel *> *))callback;

4. 相关视频列表(Feed流播放页)

  • 方法说明
/**
* 获取某视频的相关视频列表
*
* @param videoId 视频ID
* @param callback 网络请求回调: 参数1-网络请求成功, 参数2-视频列表
*/
- (void)getRelationFeedListWithVideoId:(NSString *)videoId callback:(void (^)(BOOL, NSArray<YLFeedModel *> *))callback;

5. 视频详情

  • 方法说明
/**
* 获取某视频的详细信息表
*
* @param videoId 视频ID
* @param callback 网络请求回调: 参数1-网络请求成功, 参数2-视频信息
*/
- (void)getVideoDetailWithVideoId:(NSString *)videoId callback:(void (^)(BOOL, YLFeedModel *))callback;

六  数据上报

数据上报在一览内容提供平台有着极其重要的作用,可以为App用户提供更为精准和个性化的推荐,进而提高VV和PV,增加收入。所以建议开发者接入sdk后,必须准确的调用数据上报。

1.视频展示上报

  • 对应类: YLReport
  • 调用时机
  • 在视频item(mediainfo)展示时调用
  • 说明: 视频展现一次上报一次。
  • 方法说明
/**
*
* @param videoInfo 视频信息
*/
- (void)videoShowWithVideoInfo:(YLFeedModel *)videoInfo;

京公网安备 11010502034970号 京ICP备17041367号
北京一览科技有限公司 ©2017 1lan.tv 版权所有.

Documentation built with MkDocs.