阿里百川接入流程

阿里百川接入流程

百川官方的接入文档

官方集成文档,不是很详细,感觉省略了好多重要的东西,即使照着官方文档集成,也可能会有很多莫名其妙的错误!

CSDN上的第三方教程

上面这个是我在CSDN上找到的第三方集成教程,个人感觉比官方文档要全面一些,不过也有一些问题没有细讲,新手在集成过程中难免会有各种疑惑。

楼主也是摸瞎一路采坑过来的,下面是我的集成过程,以及踩过的一些坑,希望对没有接触过阿里百川,但又有如此需求的同学提供一些帮助。

去创建你的应用

  1. 下载对应的安全图片

在这里插入图片描述
在这里插入图片描述

注意:
一定要使用gradle3.0以下的编译环境的包,不然会提示“上传失败”(这个坑了我好长时间)。
对应的keystore要一致,不然也是很坑的。

  1. 申请开通你的电商功能,马上就能通过

    在这里插入图片描述

下载百川电商SDK

  1. 添加安全图片xxx.jpg

    获得安全图片,并放在/res/drawable目录下,如果已经有安全图片,需要替换。

  2. 配置项目build.gradle文件

     maven { url 'http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/' } classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'//Added line allprojects { repositories { jcenter() maven { url 'https://maven.google.com/' name 'Google' } maven { url 'http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/' } } } 
  3. 配置modle的build.gradle文件

     //登陆 implementation 'com.ali.auth.sdk:alibabauth_core:1.4.3@jar' implementation 'com.ali.auth.sdk:alibabauth_ui:1.4.3@aar' implementation 'com.ali.auth.sdk:alibabauth_ext:1.4.3@jar' //【可选】仅供特殊合作伙伴使用 implementation 'com.ali.auth.sdk:alibabauth_accountlink:1.1.4@jar' //安全基础 implementation 'com.taobao.android:securityguardaar3:5.1.81@aar' //【可选】安全高级,如使用了发放红包、优惠券高级功能,则必须引入 implementation 'com.taobao.android:securitybodyaar3:5.1.25@aar' //Mtop网关 implementation 'com.taobao.android:mtopsdk_allinone_open:1.2.2.4@jar' //applink implementation 'com.alibaba.sdk.android:alibc_link_partner:1.1.0.6' //UT // compile 'com.taobao.android:utdid4all:1.1.5.3_proguard@jar' implementation 'com.alibaba.mtl:app-monitor-sdk:2.5.1.3_for_bc_proguard@jar' //联盟SDK implementation 'com.alimama.tunion.sdk:tuniontradesdk:0.3.2@aar' //电商SDK implementation 'com.alibaba.sdk.android:alibc_trade_common:3.1.1.210' implementation 'com.alibaba.sdk.android:alibc_trade_biz:3.1.1.210' implementation 'com.alibaba.sdk.android:alibc_trade_sdk:3.1.1.210' //电商组件&组件容器,一键加购,优惠券相关功能,仅限于微博,优酷,高德等KA合作方调用,需要申请权限 implementation 'com.alibaba.sdk.android:alibc_trade_container:1.0.0.3' //want 电商want组件,一键加购功能(包含 want心智组件UI相关功能) implementation 'com.alibaba.sdk.android:alibc_want:1.0.0.3' 
  4. 配置AndroidManifest.xml

     <!--cps--> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> tools:replace="android:allowBackup" 
  5. Proguard 规则

     -keepattributes Signature -keep class sun.misc.Unsafe { *; } -keep class com.taobao. {*;} -keep class com.alibaba. {*;} -keep class com.alipay. {*;} -dontwarn com.taobao. -dontwarn com.alibaba. -dontwarn com.alipay. -keep class com.ut. {*;} -dontwarn com.ut. -keep class com.ta. {*;} -dontwarn com.ta. -keep class org.json. {*;} -keep class com.ali.auth. {*;} 
  6. Application初始化

     //电商SDK初始化 AlibcTradeSDK.asyncInit(app, new AlibcTradeInitCallback() { @Override public void onSuccess() { Toast.makeText(app, "初始化成功", Toast.LENGTH_SHORT).show(); } @Override public void onFailure(int code, String msg) { Toast.makeText(app, "初始化失败,错误码="+code+" / 错误消息="+msg, Toast.LENGTH_SHORT).show(); } }); 
  7. 销毁

     在使用完成后,可以调用destroy方法,释放百川相应的资源引用 AlibcTradeSDK.destroy(); 
  8. 业务中的调用

    无论是在App内适用WebView,还是直接调起手淘App,都需要适用AlibcTrade.show()方法,这个方法里面配置了很多参数,基本决定了你的业务逻辑是否正常,在使用的时候,我们需要根据自己App的业务逻辑,以及要使用的电商模板,分别配置。

    百川sdk具体的跳转AlibcTrade.show()方法 AlibcTrade.show(context, detailPage, showParams, alibcTaokeParams, exParams, new AlibcTradeCallback() { @Override public void onTradeSuccess(AlibcTradeResult tradeResult) { } @Override public void onFailure(int i, String s) { } }); 

    第二个参数就是具体要跳转的页面, 我们的需求几乎都是碰到商品详情才跳转, 所以只用了两种方式AlibcDetailPage和AlibcPage, 前者只能使用ID跳转具体页面,后者只能通过url跳转具体页面。

    AlibcDetailPage detailPage = new AlibcDetailPage(id); AlibcPage detailPage = new AlibcPage(url); 

    第三个参数就是跳转方式,可以H5,可以拉手淘,也可以自动。

    AlibcShowParams showParams = new AlibcShowParams(OpenType.Native, false); 

    第四个重要的参数是AlibcTaokeParams, 淘宝联盟后台的订单匹配就是通过PID来识别的
    在这里插入图片描述
    至于pid如何获取,可以参考图3 也可以点进下面链接,有详细介绍。

    Android集成常见问题汇总

    目前,我们通用的PID是三段式的,如:

    mm_xxx_xxx_xxxxx 

    这其中,“mm”和”_”没什么特别的意义,而后面的三组数字,代表的含义如下:

    第一组:代表你的个人身份,一般注册只有就是唯一的,不区分ios和Android

    第二组:代表siteid 区分ios和Android,一个备案网站对应一个siteId和一个唯一的apppkey,如:
    在这里插入图片描述
    第三组:代表adzoneid 每创建一个推广位,就会生成一个对应的adzoeid在这里插入图片描述

    在代码中的配置

     AlibcTaokeParams alibcTaokeParams = new AlibcTaokeParams(); // adzoneid 为mm_memberId_siteId_adzoneId最后一位 alibcTaokeParams.adzoneid = "54018xxxxxx"; alibcTaokeParams.pid = "mm_11600xxxx_18460xxxx_54018xxxxxx"; alibcTaokeParams.extraParams = new HashMap<>(); alibcTaokeParams.extraParams.put("taokeAppkey", "2523xxxx"); 

    第五个参数不知道具体用法是什么,一般就是如下写法

    Map<String, String> exParams = new HashMap<>(); exParams.put("isv_code", "0.0.1"); exParams.put("dxxx", "xxxx");//自定义参数部分,可任意增删改 

注意

集成完毕,商品时能够调起手淘app或者能够跳转到webview的淘宝详情页,这只表示你可以集成完事了,但并不代表就没有问题了,在上面的代码中即使不填写taokeappkey和adzoneid,也是可以调起手淘宝app并跳转到淘宝详情页的,但这样购买之后,在淘宝联盟的效果报表中是区分不出来推广渠道的。

刚开始我是通过AlibcPage跳转的, 但是我们app首页有一个足迹导航栏,在淘宝授权后可以直接跳转到自己的足迹Web页面, 但是从足迹跳转web的时候并没有传pid, 明明设置了参数的, 后来改成提取详情页url里面的id, 然后通过AlibcDetailPage来跳转就可以了。

如何感觉集成完全没有问题,此时就可以通过自己的app调起手淘app购买一件商品,然后去淘宝联盟后台–效果报表–淘宝客推广下面,导出excel表格查看。

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/164115.html

(0)
上一篇 2024年 7月 4日
下一篇 2024年 7月 4日

相关推荐

关注微信