我们正在iOS和iOS中展示一些广告使用Google Mobile Ads SDK的Android应用程序。当用户点击广告时,我们需要一些参数来进行Web服务调用,我们使用GADAppEventDelegate获取它们,在Web服务调用之后,我们提供自定义屏幕。 (所以我们不想将用户重定向到网页)。问题是未跟踪点击次数,我们认为广告素材可能配置不正确。
<html><body leftMargin="0" topMargin="0" marginwidth="0" marginheight="0">
<html>
<head>
<script src="http://media.admob.com/api/v1/google_mobile_app_ads.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
function fireEvent() {
admob.events.dispatchAppEvent("query_string", "ad_origin_key=USPS2013_iPhone_Upgraded_320x50&k_key=&acid_key=719768856&ad_image_url_key=http://USPS2013_iphone_320x50");
}
</script>
</head>
<body>
<img src="http://pagead2.googlesyndication.com/pagead/imgad?id=CICAgIDQ59KwChABGAEyCKGNWPM-wPBl" width="320" height="50" border="0" onclick="fireEvent()"/>
</body>
</html></body></html>
我认为为了不被重定向到Web页面,我们应该在fireEvent()函数中创建一个AJAX请求,类似$.get("%%CLICK_URL_UNESC%%www.example.com/ads/landingpage");
,但浏览器不允许向服务器发出不同的AJAX请求原始请求服务器。
那么我们如何解决这个问题,跟踪点击而不是导航到新的网页?
由于
答案 0 :(得分:0)
您好我认为这个答案有点晚了,但您引用的代码实际上有效!!
在广告素材的HTML标题内
<script src="http://media.admob.com/api/v1/google_mobile_app_ads.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
// Send an event when ad loads.
// admob.events.dispatchAppEvent("adId", "1");
// handle your click with onClick="handleClick()"
handleClick = function() {
admob.log("click ad: call handleClick()"); // call a log to XCode console for debug
// Send an event when ad is clicked.
admob.events.dispatchAppEvent("eventName", "params"); //{action}|{action params}...
//magic goes here
//i think the click measure through this url
//and use jQuery get that send get method without callbacks
$.get("%%CLICK_URL_UNESC%%")
};
</script>
您必须等待30分钟,然后您才会在DFP广告管理系统控制台中看到点击统计信息。