Cordova Android应用程序中的谷歌出版商标签广告
我正在Cordova 2.2.0框架内开发一款Android应用程序,在基于GPT的广告上点击时遇到了很多问题(当然我不是第一个尝试这一点的人) GPT通过广告创意呈现友好的iFrame,基本上包含Cordova Android应用程序中的谷歌出版商标签广告,android,cordova,google-dfp,Android,Cordova,Google Dfp,我正在Cordova 2.2.0框架内开发一款Android应用程序,在基于GPT的广告上点击时遇到了很多问题(当然我不是第一个尝试这一点的人) GPT通过广告创意呈现友好的iFrame,基本上包含 在浏览器和iOS上,点击广告将在一个新的浏览器窗口中打开点击窗口,这就是我想在这里实现的。但在Kindle Fire HD和Droid 4的本机应用程序上,点击广告会打开IFRAME空间中的ClickTour页面,因此您可以在我的另一个页面中看到页面左上角的320x50 我尝试过编辑白名单,但这不是
在浏览器和iOS上,点击广告将在一个新的浏览器窗口中打开点击窗口,这就是我想在这里实现的。但在Kindle Fire HD和Droid 4的本机应用程序上,点击广告会打开IFRAME空间中的ClickTour页面,因此您可以在我的另一个页面中看到页面左上角的320x50
我尝试过编辑白名单,但这不是一个选项,因为创意可以来自任何地方(我们使用多个广告网络来填充我们的剩余广告),并且因为广告呈现在我无法控制的IFRAME中,我无法将HREF包装在javascript:window.open()
,我还没有找到让Android Java代码拦截这些点击的方法
我也调查过AdMob,但我的老板不想改变我们手机网站的广告体验,因为手机网站上有一到三个随页面滚动的广告
编辑能够在广告所在的页面上呈现AdMob视图,以便视图与网站一起滚动,这将起作用
我该怎么做才能在新窗口中打开这些点击
感谢您的帮助。我将此JavaScript代码添加到加载或刷新广告的函数中:
$('.advertisement iframe').each(function() {
$(this).one('load', function() {
makeOpenWindowHref(this);
});
});
具有以下功能:
function makeOpenWindowHref(element) {
if (isNativeApp){
$(element).contents().find('a[href^="http"]').each(function() {
$(this).click(function(event){
event.preventDefault();
navigator.app.loadUrl($(this).attr("href"), {
openExternal:true
});
});
});
}
}
这实质上修改了IFRAME内容,使用Cordova
navigator.app.loadUrl()
函数使点击打开到一个新窗口。Aha!这个答案表明我可以通过编程覆盖URL--。我会测试,如果有效,我会回答我自己的问题。是的。我找到了我的答案,明天我会发布它(因为我还不能回答我自己的问题)。