开屏广告
开屏广告
此章节将演示如何请求在APICloud
环境下请求与展示开屏广告
开屏广告分为原生开屏广告
和插入到 frame 中
两种类型:
原生开屏广告是拉起一个新的AndroidActivity,接入相对简单,效率更高;
插入到 frame 中可以集成在当前的页面中,使用更加灵活。
原生开屏广告
pages/ad/splash.stml
loadSplashAd() {
var zjSdk = api.require("zjSdk")
// String posId -> 广告位ID
// boolean enableBG -> 是否使用启动图作为背景,false时为白色
var params = { posId: ZJSdkPosId.splash, enableBG: true }
zjSdk.loadSplashAd(params, function (ret) {
if (ret.event == ZJSdkEvent.EVENT_AD_ERROR) {
api.toast({
msg: "开屏广告出错:" + ret.msg,
})
console.log(ZJSdkEvent.EVENT_AD_ERROR + ": " + ret.code + " | " + ret.msg)
} else if (ret.event == ZJSdkEvent.EVENT_CLOSE) {
console.log("开屏广告关闭")
}
})
}
插入到 frame 中
pages/ad/splash.stml
loadSplashView() {
let zjSdk = api.require("zjSdk")
// String posId -> 广告位ID | String uid -> 用户ID
// String fixedOn -> fixedOn 的对象名
api.showProgress({
modal: true
})
let params = { posId: ZJSdkPosId.splash, fixedOn: "container" }
zjSdk.loadSplashView(params, function (ret) {
api.hideProgress()
switch (ret.event) {
case ZJSdkEvent.EVENT_AD_ERROR: {
api.toast({
msg: "开屏广告出错" + ret.msg,
})
console.log(ZJSdkEvent.EVENT_AD_ERROR + ": " + ret.code + " | " + ret.msg)
break
}
case ZJSdkEvent.EVENT_SHOW: {
console.log("开屏广告展示成功")
break
}
case ZJSdkEvent.EVENT_CLICK: {
console.log("开屏广告点击")
break
}
case ZJSdkEvent.EVENT_CLOSE: {
console.log("开屏广告关闭")
}
}
})
}