1.概述
AdSDK提供获取物料,更新物料,等相关功能,并且封装了本地端侧算法推理能力,根据算法结果实现本地最优内容推荐,SDK支持AnroidStudio开发环境。
2.SDK集成
依赖导入 1.在Android?程根?录下的build.gradle 基础配置?件中,加?阿?云仓库地址,进?仓库配置。
maven {
url "http://maven.aliyun.com/nexus/content/repositories/releases/"
}
maven {
credentials {
username '6084c7ea3a10edbf3606265f'
password 'AdRObEGejRv)'
}
url 'https://packages.aliyun.com/maven/repository/2005910-snapshot-tHxCTw/'
}
2.在app模块build.gradle添加依赖,在libs下导入adsdk.aar
android{
repositories {
flatDir {
dirs 'libs'
}
}
}
dependencies {
api 'com.aliyun.iot.campusx:linkcontent:0.0.21-SNAPSHOT'
api 'com.aliyun.alink.linksdk:iot-linkkit:1.7.2'
api 'com.aliyun.dpa:oss-android-sdk:2.9.5'
api 'org.bytedeco:javacv:1.5.6'
api 'org.bytedeco:opencv:4.5.3-1.5.6:android-arm'
api(name: 'adsdk-release1.0.0', ext: 'aar')
}
3.SDK初始化
initAdSdk(Context context, DeviceInfoEx adDeviceInfoEx, boolean needInitLinkit, IContentObserver iContentObserver)
参数说明 | 类型及作用 |
---|
context | Context,应用上下文 | adDeviceInfoEx | DeviceInfoEx,设备信息(三元组) | needInitLinkit | Context,是否使用Linkit(强制为true) | IContentObserver | iContentObserver,注册内容状态观察者 |
4.设备信息DeviceInfoEx
初始化Linkkit的三元组信息
public String productKey = null;
public String deviceName = null;
public String productSecret = null;
public String deviceSecret = null;
5.内容状态观察者IContentObserver
实现内容状态观察者接?,监控内容状态事件,根据需要来完成相应的操作
public abstract interface IContentObserver {
public static final int CS_CONTENT_READY = 1;
public static final int CS_CONTENT_ERROR = -1;
public abstract void onContentStatusChanged(int status, String message);
}
6.获取推荐的内容物料
在SDK内容物料及模型加载完成后(IContentObserver回调CS_CONTENT_READY状态),获取物料
List<MaterialInfo> adContent = AdSDK.getAdContent();
public class MaterialInfo {
public static final int MT_IMAGE = 1;
public static final int MT_VIDEO = 2;
public static final int MT_AUDIO = 3;
public static final int MT_TEXT = 4;
public static final int MT_TTS = 5;
public String id;
public String creativeId;
public String creativeName;
public String[] tags;
public int type;
public String filePath;
public String[] texts;
public String positionId;
public int duration; }
7.监播信息上报
?于上报内容播放进度的监播信息,开始播放及结束播放时务必调?本接?上报进度,以确保数据统计 的准确性。
void reportPlayProgress(int time, String creativeId)
8.释放内容管理资源
退出时释放内容管理资源,包括本地SDK使?内存资源。
void destroy()
9.更多使用参考demo
|