Banner与信息流广告

Banner与信息流广告

此章节将演示如何请求在APICloud环境下请求与展示信息流广告

请求广告

pages/ad/native_express.stml
loadNativeExpressAd(index) {
	let zjSdk = api.require("zjSdk")
	// String posId -> 广告位ID 
	// int left -> 左边距 | int top -> 上边距
	// int width -> 宽,单位PX,默认填满 | int height -> 高,单位PX,默认填满
	// boolean fixed -> 是否固定位置(false时跟随页面滚动) | String fixedOn -> fixedOn 的对象名
	// String viewId -> 唯一的容器ID,用于移除
	let params = { posId: ZJSdkPosId.nativeExpress, left: 0, top: 0, width: -1, height: 300, fixed: false, fixedOn: "container" + index, viewId: index == 1 ? viewId1 : viewId2 }
	zjSdk.loadNativeExpressAd(params, function (ret) {
		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("信息流广告关闭")
			}
		}
	})
},

移除广告

pages/ad/native_express.stml
// 移除信息流
removeNativeExpressAd(index) {
	let zjSdk = api.require("zjSdk")
	// String viewId -> 唯一的容器ID,用于移除 view
	let params = { viewId: index == 0 ? "" : (index == 1 ? viewId1 : viewId2) }
	zjSdk.removeNativeExpressAd(params, function (ret, err) {
		if (ret != null) {
			console.log("信息流广告移除成功")
		} else {
			console.log("信息流广告移除失败")
		}
	})
}