自定义广告联盟接入解决方案,适用所有广告商接入。
如:首页着陆地址为:(http://www.xxx.cn?from=yrt&aop=1_1_0_1_1_1&tid=d000a26123454442dc4f3646922028e&lb1=1&lb2=2&lb3=3&lb4=4&lb5=5);
在基类中获取入参并存COOKIE
@After
protected static void getAdUnionParams(){
String from = params.get("from");
if(from!=null){
Response.current().setCookie(Constants.ADUNION_CPACPS_FROM,from,null,"/",30*60*60*24,false);
String tid = params.get("tid");
String aop = params.get("aop");
if(tid!=null&&tid.length()>0){
Response.current().setCookie(Constants.ADUNION_CPACPS_TID,tid,null,"/",30*60*60*24,false);
}
if(aop!=null)
Response.current().setCookie(Constants.ADUNION_AOP,aop,null,"/",30*60*60*24,false);
String retUrl = request.headers.get("referer")+"";
if(retUrl!=null&&!retUrl.equals("")&&!retUrl.equals("null"))
Response.current().setCookie(Constants.COOKIE_KEY_BACKURL+"in",retUrl);
String lb1 = params.get("lb1");
String lb2 = params.get("lb2");
String lb3 = params.get("lb3");
String lb4 = params.get("lb4");
String lb5 = params.get("lb5");
if(lb1!=null&&lb1.length()>0){
Response.current().setCookie(Constants.ADUNION_AOP+"lb1",lb1,null,"/",30*60*60*24,false);
}
if(lb2!=null&&lb2.length()>0){
Response.current().setCookie(Constants.ADUNION_AOP+"lb2",lb2,null,"/",30*60*60*24,false);
}
if(lb3!=null&&lb3.length()>0){
Response.current().setCookie(Constants.ADUNION_AOP+"lb3",lb3,null,"/",30*60*60*24,false);
}
if(lb4!=null&&lb4.length()>0){
Response.current().setCookie(Constants.ADUNION_AOP+"lb4",lb4,null,"/",30*60*60*24,false);
}
if(lb5!=null&&lb5.length()>0){
Response.current().setCookie(Constants.ADUNION_AOP+"lb5",lb5,null,"/",30*60*60*24,false);
}
}
}
SERVICE层中获取参数并处理。
private static Cookie fromcookie; //来源
private static Cookie tidcookie;//第三方来参
private static Cookie aopcookie;//采集点定义
private static Cookie urlcookie;//来源页面
private static Cookie lb1; //第三方预留参数。
private static Cookie lb2; //第三方预留参数。
private static Cookie lb3; //第三方预留参数。
private static Cookie lb4; //第三方预留参数。
private static Cookie lb5; //第三方预留参数。
private static String lb1Str = null;
private static String lb2Str = null;
private static String lb3Str = null;
private static String lb4Str = null;
private static String lb5Str = null;
private static String[] aops = {"0"};
private static String backUrl=null;
private static String tid="";
private static String unionCode = null; //简单去重处理KEY
/**
* 初始化
*/
public static void init()
{
fromcookie = Request.current().cookies.get(Constants.ADUNION_CPACPS_FROM);
tidcookie = Request.current().cookies.get(Constants.ADUNION_CPACPS_TID);
aopcookie = Request.current().cookies.get(Constants.ADUNION_AOP);
urlcookie = Request.current().cookies.get(Constants.COOKIE_KEY_BACKURL+"in");
lb1 = Request.current().cookies.get(Constants.ADUNION_AOP+"lb1");
lb2 = Request.current().cookies.get(Constants.ADUNION_AOP+"lb2");
lb3 = Request.current().cookies.get(Constants.ADUNION_AOP+"lb3");
lb4 = Request.current().cookies.get(Constants.ADUNION_AOP+"lb4");
lb5 = Request.current().cookies.get(Constants.ADUNION_AOP+"lb5");
lb1Str = lb1!=null?lb1.value:null;
lb2Str = lb2!=null?lb2.value:null;
lb3Str = lb3!=null?lb3.value:null;
lb4Str = lb4!=null?lb4.value:null;
lb5Str = lb5!=null?lb5.value:null;
if(aopcookie!=null)
{
String aopStr = aopcookie.value;
if(aopStr!=null&&aopStr.length()>5)
{
aops = aopStr.split("_");
}
}
if(urlcookie!=null){
String siteurl = urlcookie.value;
if(siteurl!=null)
backUrl = siteurl.replace("[", "").replace("]", "");
}
if(tidcookie!=null){
tid = tidcookie.value;
if(tid!=null)
tid = tid.replace("[", "").replace("]", "");
}
}
注册方法采集点,注册完成后调用下面方法采集数据。
/**
* 广告联盟来的注册 采集点刘名雄
* 1_0_0_0_0 第一位为1
* @param user
*/
public static void adUnionReg(User user)
{
try{
init();
if(fromcookie!=null&&aops!=null&&aops.length>0&&aops[0].equals("1")) //开启则采集
{
String from = fromcookie.value;
user.user_from = from;
t_adunion_result adunion = new t_adunion_result();
adunion.cpa_param = tid;
if(from!=null&&from.equalsIgnoreCase("yrt")) //需要回调通知注册状态
{
String userid = Encrypt.encrypt3DES(user.id+"",Constants.HDCPACPSKEY);
String sign = Encrypt.MD5(user.cpa_param+userid+Constants.CPACPSKEY);
String cpsUrl = Constants.CPACPSAPIURL+"?tid="+user.cpa_param+"&uid="+userid+"&sign="+sign;
String cpsRet = WS.url(cpsUrl).get().getString();
adunion.cpa_result = cpsRet;
}
adunion.userid = user.id;
adunion.user_from = from;
adunion.cpa_param = user.cpa_param;
adunion.addtime = new Date();
adunion.aop = Arrays.toString(aops);
if(backUrl==null){
backUrl = Request.current().headers.get("referer")+"";
backUrl = backUrl.replace("[", "").replace("]", "");
}
adunion.siteurl = backUrl;
String ip = DataUtil.getIp();
adunion.ip = ip;
adunion.lb1 = lb1Str;
adunion.lb2 = lb2Str;
adunion.lb3 = lb3Str;
adunion.lb4 = lb4Str;
adunion.lb5 = lb5Str;
adunion.save(); //记录回调
backUrl = null;
}
}catch(Exception ex)
{
ex.printStackTrace();
}
}
/**
* 用户提现点采集
* 0_0_0_0_1_1 第六位为1
* @param userid
* @param orderId
*/
public static void adUnionLogin(long userid)
{
try{
init();
if(fromcookie!=null&&aops!=null&&aops.length>5&&aops[5].equals("1"))
{
t_adunion_result adunion = new t_adunion_result();
String from = fromcookie.value;
adunion.user_from = from;
adunion.cpa_param = tid;
adunion.userid = userid;
adunion.addtime = new Date();
adunion.aop = Arrays.toString(aops);
if(backUrl==null){
backUrl = Request.current().headers.get("referer")+"";
backUrl = backUrl.replace("[", "").replace("]", "");
}
adunion.siteurl = backUrl;
String ip = DataUtil.getIp();
adunion.ip = ip;
adunion.lb1 = lb1Str;
adunion.lb2 = lb2Str;
adunion.lb3 = lb3Str;
adunion.lb4 = lb4Str;
adunion.lb5 = lb5Str;
adunion.save();
backUrl = null;
}
}catch(Exception ex)
{
ex.printStackTrace();
}
}
自定义广告联盟接入解决方案,适用所有广告商接入。相关推荐
- 渠道广告联盟SDK接入思路总结
前言 1.国内安卓硬核渠道,例如华为.OPPO.ViVo.小米.4399都有自家的广告联盟SDK,要到对应开放平台下载对应广告SDK. 2.其他渠道例如应用宝.TapTap.好游快爆.爱奇艺.233. ...
- Android腾讯广告联盟接入-----开屏广告
emmmmm 开头说两句吧 因为这是我第一次写博客 相当于自己记录下自己解决的问题吧而且刚入社会去开阔自己的视野 正文!!!! 先上效果图 一:准备工作 当然现在先得去注册一个腾讯广告联盟的账号,注册 ...
- Android腾讯广告联盟接入-----banner广告
emmm 这次的接上回腾讯的开屏广告 老规矩 先上效果图 前面的三步都和开屏广告一样的 所以我就直接拿来用了 一:准备工作 当然现在先得去注册一个腾讯广告联盟的账号,注册地址为:http://e.q ...
- android 腾讯广告联盟,Android腾讯广告联盟接入-----开屏广告
emmmmm 开头说两句吧 因为这是我第一次写博客 相当于自己记录下自己解决的问题吧而且刚入社会去开阔自己的视野 正文!!!! 先上效果图 一:准备工作 当然现在先得去注册一个腾讯广告联盟的账号,注册 ...
- 防屏蔽浏览器_国外lead/emu广告联盟平台/扫盲篇–UA,指纹浏览器与流量来路-VMLogin指纹浏览器介绍..
国内的广告联盟近几年来越来越多,但是国外的广告联盟简直是多如牛毛,那么我们怎样快速地找到适合自己的国外的广告联盟平台呢? 做国外lead 绕不开的东西,UA 流量来路,浏览器指纹.虽然这连基础都不算的 ...
- Android开发-在Android应用里嵌入腾讯广告联盟进行盈利实现
前 言 对于个人开发者来说,独立开发一款基于网络App并且上线提供用户下载使用是需要花钱购买服务器的.而且当用户的并发量比较大时开发者所花费的维护应用的费用就越高,这时,个人开发者需要在应用里嵌入广告 ...
- 乘风广告联盟系统v6.6 官方版源码
简介: 乘风广告联盟系统支持多台服务器负载均衡,适用普通广告联盟.手机广告联盟等,模板多样,可以自行制作,简易的文章发布功能,分类功能,有需要的用户不要错过了,赶快来下载吧! 安装说明: 1.如何安装 ...
- 乘风广告联盟系统 v6.2
乘风广告联盟系统 v6.2 Sql版 作者:乘风(网名) QQ:178575 E-Mail:yliangcf@163.com 开发网站:http://www.qqcf.com 详细简介:http:// ...
- 《计算机世界》封面报道:广告联盟7宗罪
作者:汤浔芳 国内各大网站广告联盟发展至今,已经覆盖大部分互联网站点,成为广告主投放网络广告的重要渠道之一.据不完全统计,2009年广告联盟营收已经超过20亿元. 但当前广告联盟市场,却是鱼龙混杂.除 ...
最新文章
- **Apache Options指令详解
- 23种设计模式C++源码与UML实现--责任链模式
- Hbase 预写日志WAL处理源码分析之 LogCleaner
- python模块用法教程_Python学习之asyncore模块用法实例教程
- JAVA遍历21位数
- 微软以白金会员加入 OpenChain 开源组织
- xml文件修改逆向android,Android逆向重置版(2)—起源
- JWT介绍以及java-jwt的使用
- 使用L2TPV3桥接---FR-TO-PPP
- 1.从Paxos到Zookeeper分布式一致性原理与实践---分布式架构
- ActiveX控件dsoFramer的使用(word、excel、PPT)
- [20150803]触发器对dml的影响.txt
- _MSC_VER简介与使用
- 计算机基础知识面试题集
- onenote for win 10无法正常启动(修复或者重装可解决)
- 计161--Problem H: 求三角形面积-gyy
- React 面试题 回答
- yolov4中的route和shortcut层
- 云服务器的主要性能参数,云服务器参数到配置,一文让您从小白到高手
- 计算机网络之网络安全