JingBin's Home

京东CPS商品推广接入流程

京东CPS与阿里百川CPS有很大不同,认清基本概念后集成时就容易的多。

基本操作

京东CPS,只需要一个链接足以,这条链接放在自身的WebViewActivity中,如果设置了唤起App,则链接会返回一个打开京东App的规则字符串,我们获取到后跳转到京东App就可以了。

京东cps,设置推广位

设置后得到一个链接,然后用自身的WebView请求,当然也可以用系统自带的浏览器打开,可以直接唤起App。有时候我们不想用户离开自己的应用,使用自身的App的WebView控件打开就成了首选,这里就需要配置一些参数。

继承WebViewClient复写里面的shouldOverrideUrlLoading方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@SuppressWarnings("deprecation")
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// DebugUtil.error("----url:"+url);
if (TextUtils.isEmpty(url)) {
return false;
}
if (url.startsWith("http:") || url.startsWith("https:")) {
// 可能有提示下载Apk文件
if (url.contains(".apk")) {
startActivity(url);
return true;
}
return false;
}
startActivity(url);
return true;
}
private void startActivity(String url) {
try {
Intent intent1 = new Intent();
intent1.setAction("android.intent.action.VIEW");
Uri uri = Uri.parse(url);
intent1.setData(uri);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mActivity.startActivity(intent1);
} catch (Exception e) {
e.printStackTrace();
}
}

请求京东的推广url后,会返回一串这样的URL SCHEME:openApp.jdMobile://virtual?params={参数}
这就是跳转京东页面的SCHEME

另外其他App的URL SCHEME

淘宝: taobao://
微博: weibo://qrcode
微信: weixin://scanqrcode
支付宝: alipayqr://platformapi/startapp?saId=10000007
豆瓣: douban://
京东: openApp.jdMobile://virtual?params={参数}
电话: mobilephone://
备忘录: mobilenotes://
Chrome谷歌浏览器: googlechrome://
12306订票助手: trainassist://
飞信: fetion://
豆瓣FM: doubanradio://
爱奇艺PPS: ppstream://
哔哩哔哩动画: bilibili://
56视频: com.56Video://
365日历: rili365://
58同城: wbmain://
遇见: iaround://
陌陌: momochat://
有道词典: yddict://
优酷: youku://
掌阅iReader: iReader://
天涯社区: tianya://
天气通Pro: sinaweatherpro://
天气通: sinaweather://
墨迹天气: rm434209233MojiWeather://
腾讯新闻: qqnews://
腾讯微云: weiyun://
腾讯地图: sosomap://
淘宝旅行: taobaotravel://
人人: renrenios://

阿里百川CPS与京东CPS两者对比:

CPS类别 是否需要SDK WebView处理 打开App方式 App左侧是否有标识 接入复杂程度
阿里百川 无需处理 通过SDK打开 相对复杂
京东 要处理 使用规则协议打开 简单

联系我:GitHub简书