本插件封装了快手联盟SDK
注意:本插件 iOS 平台上最低适配系统版本为 iOS 9.0
Android中:请求⼴告数据前,请务必申请IMEI权限,否则会造成下发下载类⼴告的数据⽆法正常下发,影响⼴告计费追踪。所以强烈建议媒体在通过SDK请求⼴告前,先申请获取IMEI权限。
iOS kss文件
开发者需要到快手终端安全平台进行申请账号,提交项目的bunldle id后,会得到一个对应的加密文件video_yh_loading_icon.kss以及相应的appkey和wbindex信息。
资源包文件制作方法如下:
下载 ksAdLiveAppendix 插件 zip 包并解压,把 zip 包内 target 目录下的 video_yh_loading_icon.kss文件替换为自己申请的video_yh_loading_icon.kss文件。然后重新压缩为 zip 包文件上传自定义插件,应用打包时勾选该插件。
在 iOS 平台需配置 白名单。 配置如下:
<preference name="querySchemes" value="kwai,ksnebula" />
iOS使用此插件前需先配置 config.xml文件,方法如下:
<feature name="ksAdLive">
<param name="urlScheme" value="kwai.union" />
</feature>
urlScheme:(必须配置)kwai.union
初始化
init(params)
appId:
appKey:
wbIndex:
ret:
{
status:, //布尔类型;是否初始化成功
}
err:
{
msg:'', //字符串类型;错误信息
}
var ksAdLive = api.require('ksAdLive');
var params = {
appId:'',
appKey:'',
wbIndex:''
};
ksAdLive.init(params);
iOS系统,android系统
可提供的1.0.0及更高版本
加载激励视频广告
loadRewardedAd(params,callback(ret))
posId:
showDirection:
userID:
rewardName:
rewardAmount:
extra:
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//loadRewardedAdVideoAdDidLoad:视频广告素材成功加载
//loadRewardedAdVideoAdDidFail:视频广告素材无法加载
//loadRewardedAdVideoAdVideoDidLoad:成功缓存,收到此回调可展示
//loadRewardedAdVideoAdWillVisible:视频广告位将显示 (仅iOS支持)
//loadRewardedAdVideoAdDidVisible:视频广告位已经显示 (仅iOS支持)
//loadRewardedAdVideoAdWillClose:视频广告即将关闭 (仅iOS支持)
//loadRewardedAdVideoAdDidClose:视频广告已经关闭 (仅iOS支持) //loadRewardedAdVideoAdDidClick:点击视频广告
//loadRewardedAdVideoAdDidPlayFinish:视频广告播放完成
//loadRewardedAdVideoAdDidPlayFail:视频广告播放发生错误
//loadRewardedAdVideoAdDidClickSkip:用户单击跳过按钮(仅iOS支持)
//loadRewardedAdVideoAdStartPlay:视频开始播放
//loadRewardedAdVideoAdHasReward:用户关闭视频广告
//rewardVerify:激励视频获取奖励(仅android支持)
hasReward:true //布尔类型;是否有奖励,用户关闭视频广告时返回(仅iOS支持)
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.loadRewardedAd({
posId:'',
userID:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
显示激励视频广告
showDirection:
showRewardedAd(callback(ret,err))
ret:
{
status: true //布尔类型;是否成功,true|false
}
err:
{
msg: '' //字符串类型;错误信息
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.showRewardedAd(function(ret,err) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
加载全屏广告
loadFullScreenVideoAd(params,callback(ret))
posId:
showDirection:
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//fullscreenVideoAdDidLoad:视频广告素材成功加载
//fullscreenVideoAdDidFail:视频广告素材无法加载
//fullscreenVideoAdVideoDidLoad:成功缓存,收到此回调可展示
//fullscreenVideoAdWillVisible:视频广告位将显示(仅iOS支持)
//fullscreenVideoAdDidVisible:视频广告位已经显示(仅iOS支持)
//fullscreenVideoAdWillClose:视频广告即将关闭(仅iOS支持)
//fullscreenVideoAdDidClose:视频广告已经关闭
//fullscreenVideoAdDidClick:点击视频广告
//fullscreenVideoAdDidPlayFinish:视频广告播放完成
//fullscreenVideoAdDidPlayFail:视频广告播放发生错误
//fullscreenVideoAdDidClickSkip:用户单击跳过按钮
//fullscreenVideoAdStartPlay:视频开始播放
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.loadFullScreenVideoAd({
posId:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
显示激励视频广告
showFullScreenVideoAd(callback(ret,err))
showDirection:
ret:
{
status: true //布尔类型;是否成功,true|false
}
err:
{
msg: '' //字符串类型;错误信息
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.showFullScreenVideoAd(function(ret,err) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
加载Draw广告
loadDrawAd(params,callback(ret))
posId:
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//drawAdsSuccessToLoad:广告加载成功,得到此回调后可进行open
//drawAdsLoadError:广告加载失败
//drawAdViewWillShow:广告展示
//drawAdDidClick:广告点击
//drawAdDidShowOtherController:广告跳转落地页(仅iOS支持)
//drawAdDidCloseOtherController:广告关闭落地页(仅iOS支持)
//drawAdVideoDidStart:视频开始播放
//drawAdVideoDidPause:视频暂停播放
//drawAdVideoDidResume:视频恢复播放
//drawAdVideoDidStop:视频停止播放
//drawAdVideoDidFailed:视频播放失败
interactionType:0,//数字类型;落地页类型;广告跳转落地页、广告关闭落地页时返回(仅iOS支持)
//取值范围:
//0:unknown type
//1:open downlaod page in app
//2:open webpage in app
//3:open deeplink
//4:open appstore
finished:true. //布尔类型;是否播放完成(仅iOS支持)
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.loadDrawAd({
posId:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
打开Draw广告
openDrawAd(params)
rect:
{
x: 0, //(可选项)数字类型;播放画面 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(可选项)数字类型;播放画面 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w: 320, //(可选项)数字类型;iOS支持设置'auto';播放画面宽(相对于所属的 Window 或 Frame);默认值:屏幕宽度
h: 300, //(可选项)数字类型;iOS支持设置'auto';播放画面高(相对于所属的 Window 或 Frame);默认值:屏幕高度
}
fixedOn:
fixed:
var ksAdLive = api.require('ksAdLive');
ksAdLive.openDrawAd({
rect:{}
});
iOS系统,android系统
可提供的1.0.0及更高版本
关闭Draw广告
closeDrawAd()
var ksAdLive = api.require('ksAdLive');
ksAdLive.closeDrawAd();
iOS系统,android系统
可提供的1.0.0及更高版本
加载Feed广告
loadFeedAd(params,callback(ret))
posId:
size:
{
w: 320, //(可选项)数字类型;播放画面宽(相对于所属的 Window 或 Frame);默认值:屏幕宽度
h: 300, //(可选项)数字类型;播放画面高(相对于所属的 Window 或 Frame);默认值:屏幕高度
}
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//feedAdsManagerSuccessToLoad:广告加载成功,收到此回调可调用打开接口
//feedAdsLoadError:广告加载失败
//feedAdViewWillShow:广告展示
//feedAdDidClick:广告点击
//feedAdDislike:不喜欢
//feedAdDidShowOtherController:广告跳转落地页(仅iOS支持)
//feedAdDidCloseOtherController:广告关闭落地页(仅iOS支持)
interactionType:0,//数字类型;落地页类型;广告跳转落地页、广告关闭落地页时返回(仅iOS支持)
//取值范围:
//0:unknown type
//1:open downlaod page in app
//2:open webpage in app
//3:open deeplink
//4:open appstore
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.loadFeedAd({
posId:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
打开Feed广告
openFeedAd(params)
rect:
{
x: 0, //(可选项)数字类型;播放画面 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(可选项)数字类型;播放画面 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w: 320, //(可选项)数字类型;iOS支持设置'auto';播放画面宽(相对于所属的 Window 或 Frame);默认值:屏幕宽度
h: 300, //(可选项)数字类型;iOS支持设置'auto';播放画面高(相对于所属的 Window 或 Frame);默认值:屏幕高度
}
fixedOn:
fixed:
var ksAdLive = api.require('ksAdLive');
ksAdLive.openFeedAd({
rect:{}
});
iOS系统,android系统
可提供的1.0.0及更高版本
关闭Feed广告
closeFeedAd()
var ksAdLive = api.require('ksAdLive');
ksAdLive.closeFeedAd();
iOS系统,android系统
可提供的1.0.0及更高版本
打开开屏广告
openSplashAd(params,callback(ret))
posId:
rect:
{
x: 0, //(可选项)数字类型;播放画面 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(可选项)数字类型;播放画面 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w: 320, //(可选项)数字类型;iOS支持设置'auto';播放画面宽(相对于所属的 Window 或 Frame);默认值:屏幕宽度
h: 300, //(可选项)数字类型;iOS支持设置'auto';播放画面高(相对于所属的 Window 或 Frame);默认值:屏幕高度
}
fixedOn:
fixed:
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//splashAdDidLoadFail:初始广告(素材)无法加载
//splashAdContentDidLoad:初始广告素材加载,随时可以显示
//splashAdDidVisible:已经显示
//splashAdVideoDidBeginPlay:广告视频开始播放(仅iOS支持)
//splashAdDidClick:点击广告
//splashAddidSkip:用户单击跳过按钮
//splashAdDidAutoDismiss:广告播放已完成,并且自动关闭
//splashAdDidClose: 广告关闭(仅iOS支持)
showDuration:0, //数字类型;显示时间,用户单击跳过时返回(仅iOS支持)
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.openSplashAd({
posId:'',
rect:{}
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
关闭开屏广告
closeSplashAd()
var ksAdLive = api.require('ksAdLive');
ksAdLive.closeSplashAd();
iOS系统,android系统
可提供的1.0.0及更高版本
加载插屏广告(仅支持Android)
loadInterstitialAd(params,callback(ret))
posId:
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//interstitialAdDidLoad:视频广告素材成功加载
//interstitialAdRenderSuccess:
//interstitialAdRenderFail:视频广告素材无法加载
//interstitialAdWillVisible:视频广告位将显示(仅iOS支持)
//interstitialAdDidVisible:视频广告位已经显示
//interstitialAdDidClick:点击视频广告
//interstitialAdDidSkip:跳过
//interstitialAdWillClose:广告将要关闭
//interstitialAdDidClose:广告已经关闭
//interstitialAdPlayStrart:视频广告开始播放(仅android支持)
//interstitialAdPlayError:视频广告播放失败(仅android支持)
//interstitialAdPlayEnd:视频广告播放结束(仅android支持)
//interstitialAdDidCloseOtherController:广告关闭落地页(仅iOS支持)
playDuration:0, //数字类型;播放时长,用户单击跳过时返回 interactionType:0,//数字类型;落地页类型;广告关闭落地页时返回(仅iOS支持)
//取值范围:
//0:unknown type
//1:open downlaod page in app
//2:open webpage in app
//3:open deeplink
//4:open appstore
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.loadInterstitialAd({
posId:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
android系统
可提供的1.0.0及更高版本
显示插屏广告(仅支持Android)
showInterstitialAd()
var ksAdLive = api.require('ksAdLive');
ksAdLive.showInterstitialAd();
android系统
可提供的1.0.0及更高版本
打开直播页面
openLive(params,callback(ret))
posId:
promoteID:
comment:
ret:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//videoDidStartPlay:视频开始播放
//videoDidPause:视频暂停播放
//videoDidResume:视频恢复播放
//videoDidEndPlay:视频停止播放(仅iOS支持)
//videoPlayCompleted:视频播放完成(仅android支持)
//videoDidFailedToPlay:视频播放失败
//contentDidFullDisplay:内容展示
//contentDidEndDisplay:内容隐藏
//contentDidPause:内容暂停显示 //contentDidResume:内容恢复显示
finished:true //布尔类型;是否播放完成(仅iOS支持)
}
var ksAdLive = api.require('ksAdLive');
ksAdLive.openLive({
posId:'',
promoteID:'',
comment:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
iOS系统,android系统
可提供的1.0.0及更高版本
关闭直播页面
closeLive()
var ksAdLive = api.require('ksAdLive');
ksAdLive.closeLive();
iOS系统,android系统
可提供的1.0.0及更高版本