上周对接一家提供广告接入的公司,他们对接广告的方式是通过打包原生app然后嵌入我们项目H5来实现广告接入
app通过注入方法到window对象供H5调用
方法调用
//参数
let params = {
type:'',
appId: '',
adId: '',
};
//console.log(params)
try {
//安卓端方法,一定要对参数进行str化转为纯文本
//showAd是原生提供的方法名
window.android.showAd(JSON.stringify(params))
} catch (e) {
console.log(e)
}
try {
//ios方法,showRewardAd是原生提供的方法名
window.webkit.messageHandlers.showRewardAd.postMessage(JSON.stringify(params))
} catch (e) {
console.log(e)
}
接收回调
window['方法名'] = (params) => {
console.log(params)
}