aliBCzb

工具类接口

getFeature

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码供您参考。

概述

aliBCzb模块 封装了阿里百川最新的直播sdk(包含直播间、新套件等功能), 能够使你的app快速集成淘宝的电商功能。(目前需要有一定权限的淘客可以使用!)

注意事项:

  • 当前对应百川SDK版本为4.9.2.4
  • 目前该百川sdk需要一定的资质才可使用,相应事项请咨询淘宝!(也就是一些淘客大牛才能申请到权限)
  • 请对照百川相应的文档接入

准备事项

1.首先加入百川http://baichuan.taobao.com/,在阿里百川控制台创建应用获取appkey:

2.在阿里百川控制台“API申请”中申请相应的API权限:

3.在阿里百川控制台"我的产品后台"中查看是否开通百川电商sdk:

4.生成安全图片:(使用V5版安全图片,android 需要上传apk,iOS只需要填写 bundleId:可在apicloud控制台概览里查看)

5.套件申请(通过url打开淘系页面时,可以透传登录状态)

6.配置 Android 自定义模块:(如 aliBCKey)

首先下载aliBCKey模块,将其解压并将Android的安全图片 yw_1222_baichuan.jpg 放到文件夹 aliBCKey\res_aliBCKey\res\drawable 目录下替换原有图片,重新打包成zip,即可作为自定义模块使用。(自定义模块名称可以更改为你想要的,如目录结构 xxx\res_xxx\res\drawable)

7.配置 ios 自定义模块:(如 aliBCKey)

首先下载aliBCKey模块,将其解压并将ios的安全图片 yw_1222_baichuan.jpg 放到文件夹 aliBCKey\target目录下替换原有图片,重新打包成zip,即可作为自定义模块使用。(自定义模块名称可以更改为你想要的,如目录结构 xxx\target)

8.配置百川SDK自定义模块:(由于sdk较大/和其他模块有冲突,所以单独把百川的sdk提出来使用)

下载aliBCVipSdk(提取码:se6k)模块,上传到APIcloud后台作为自定义模块添加到相应的App中。(如果提取码失效,请查看论坛示例)

9.使用此模块之前需先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:

  • 模块名称:aliBCzb
  • 参数:urlScheme, querySchemes
  • 参数说明:

    • urlScheme参数用于处理应用间的跳转,值为tbopen+appkey, appkey是在阿里百川上申请的appkey.
    • querySchemes参数用于配置可被检测的URL Scheme,多个参数用逗号隔开,本模块需添加tbopen,tmall两个参数.

    • 配置示例:

    <preference name="querySchemes" value="tbopen,tmall"/>
      <feature name="aliBCzb">
        <param name="urlScheme" value="tbopen23417814"/>
      </feature>

asyncInit

初始化SDK(调用优先级最高,只需要调用一次)

asyncInit(callback(ret,err))

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.asyncInit(function(ret,err){});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

registerNavigateUrl

注册分享实现(注意:该接口只能调用一次,建议放在index里面调用

registerNavigateUrl({params},callback(ret))

params

hook:

  • 类型:boolean
  • 默认:false
  • 描述: 是否拦截百川分享实现(由自己处理分享实现) 仅iOS

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:返回值
  • 内部字段:
{
    url: ''  //openUrl
}

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.registerNavigateUrl({
    hook: true
}function(ret,err){
    alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

registerImage

注册图片库实现

registerImage()

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.registerImage();

可用性

iOS系统,Android系统

可提供的2.0.2及更高版本

sdkVersion

同步返回sdk版本

sdkVersion()

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.sdkVersion();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setIsvVersion

设置三方媒体应用版本号

setIsvVersion({params})

params

version:

  • 类型:字符串
  • 默认:无

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.setIsvVersion({version:'1.0.0'});

可用性

iOS系统,Android系统

可提供的2.0.2及更高版本

setDebug

打开|关闭调试

setDebug({params})

params

on:

  • 类型:布尔值
  • 默认:true

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.setDebug({on:false});

可用性

iOS系统

可提供的2.0.2及更高版本

isDebug

同步返回 是否debug

isDebug()

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.isDebug();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setChannel

设置渠道信息(如果有渠道专享价,需要设置)

setChannel({params})

注意:初始化完成后调用才能生效

params

typeName:

  • 类型:字符串
  • 默认值:“0”
  • 描述:(可选项)设置渠道类型

channelName:

  • 类型:字符串
  • 默认值:null
  • 描述:(可选项)设置渠道名称

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.setChannel({
    typeName:'0',
    channelName:'developer'
},function(ret,err){});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

showLogin

授权登录

showLogin(callback(ret,err))

callback(ret,err)

ret:

  • 类型:JSON对象
  • 描述:返回值
  • 内部字段:
{
    status: true,              //是否授权登录成功
    isLogin : true,            //是否授权登录成功
    nick : '',              //昵称
    avatarUrl : '',         //头像地址
    openId : '',            //用户标识
    openSid : '',            //用户标识
    userid : '',            //仅android有此返回值
    topAccessToken:''        //仅iOS有此返回值
    topAuthCode : ''        //仅iOS有此返回值
}

err:

  • 类型:JSON对象
  • 描述:返回值
  • 内部字段:
{
    code : 1,                //数字类型;错误码
    message : '',           //字符串;错误提示信息
}

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.showLogin(function(ret,err){
    if(ret.status){
        alert(JSON.stringify(ret));
    }else{
        alert(JSON.stringify(err));
    }
});

可用性

ios系统,Android系统

可提供的1.0.0及更高版本

logout

注销

logout(callback(ret,err))

callback(ret,err)

ret:

  • 类型:JSON对象
  • 描述:返回值
  • 内部字段:
{
    status: true,              //布尔值,操作成功
}

err:

  • 类型:JSON对象
  • 描述:返回值
  • 内部字段:
{
    code : 1,                //数字类型;错误码
    message : '',           //字符串;错误提示信息
}

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.logout(function(ret,err){
    if(ret.status){
        alert(JSON.stringify(ret));
    }else{
        alert(JSON.stringify(err));
    }
});

可用性

ios系统,Android系统

可提供的1.0.0及更高版本

getUserInfo

获取用户信息

getUserInfo(callback(ret,err))

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:返回值
  • 内部字段:
{
    status: true|false,      //布尔值,操作是否成功
    isLogin : true,            //是否授权登录了淘宝
    nick : '',              //昵称
    avatarUrl : '',         //头像地址
    openId : '',            //用户标识
    openSid : '',            //用户标识
    userid : '',            //仅android有此返回值
    topAccessToken:''        //仅iOS有此返回值
    topAuthCode : ''        //仅iOS有此返回值
}

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.getUserInfo(function(ret,err){
    if(ret.status){
        alert(JSON.stringify(ret));
    }else{
        alert(JSON.stringify(ret));
    }
});

可用性

ios系统,Android系统

可提供的1.0.0及更高版本

openByCode

打开电商套件页面

openByCode({params},callback(ret,err))

params

code:

  • 类型:字符串
  • 描述:套件code
  • 默认:'detail'

id:

  • 类型:字符串
  • 描述:商品id(详情页面必传)

shopId:

  • 类型:字符串
  • 描述:店铺id(店铺页面必传)

sellerId:

  • 类型:字符串
  • 描述:卖家id(店铺页面必传)

biz_extParams:

  • 类型:字符串
  • 描述:扩展业务参数(涉及到联盟侧诸如返佣比例等参数,具体含义及获取会在分佣相关部分说明)
  • 内部字段: 请参考百川文档AlibcBizParams参数的extParams字段

openType:

  • 类型:字符串
  • 默认:'auto'
  • 描述:(可选项)打开页面的方式
  • 取值范围:
    • 'auto' //智能判断(安装了手淘/天猫时打开手淘/天猫,否则走failModeType模式打开)
    • 'native' //手机淘宝/天猫

linkKey:

  • 类型:字符串
  • 默认:无
  • 描述:(可选项)当打开页面的方式(openType)为native时,设置拉起手淘or天猫。(不传则走百川默认设置,建议传值)
  • 取值范围:
    • 'tmall' //拉起天猫
    • 'taobao' //拉起手淘

pid:

relationId:

  • 类型:字符串
  • 描述:渠道id(非必填项)

materialSourceUrl:

  • 类型:字符串
  • 描述:媒体物料来源url(非必填项):数据链路的回溯支持

tk_extParams:

  • 类型:JSON对象
  • 描述:(可选项)扩展参数(分佣相关的),TaokeParams参数中的extParams字段
  • 内部字段: 请参考百川文档TaokeParams参数中的extParams字段

backUrl:

  • 类型:字符串
  • 默认:无
  • 描述:用于打开手淘时的 “返回(小把手)” 的点击返回,目前ios传空字符串,android传config.xml文件中配置的urlScheme(即tbopen+appkey)

degradeUrl:

  • 类型:字符串
  • 默认:(可选项)无
  • 描述:降级url,如果唤端失败且设置了降级url,则加载该url

failModeType:

  • 类型:字符串
  • 默认:无 (没安装手淘的时候会打开手淘的下载页面--SDK默认逻辑)
  • 描述:用于控制没安装手淘或者没检测到手淘的时候的打开页面逻辑
  • 取值范围:
    • 'h5' //打开H5页面
    • 'none' //不做处理
    • 'download'

trackParams:

  • 类型:JSON对象
  • 默认:null
  • 描述:(可选项)链路跟踪参数(自定义)

callback(ret,err)

ret:

  • 类型:JSON对象
  • 描述:购买成功后返回
  • 内部字段:
{
    status: true,                      //页面打开成功
}

err:

  • 类型:JSON对象
  • 描述:错误时返回
  • 内部字段:
{
    code: 0,                          //页面打开失败
    message : '',                    //字符串,错误信息
}

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.openByCode(
    {
        code: 'detail',
        id:'37196464781L',
        openType:'native',
        backUrl: api.systemType == 'ios' ? '' : 'tbopenXXXX',
        pid:'mm_xxxxxx_xxxxxx'
    },function(ret,err){
        if(ret){
            alert(JSON.stringify(ret));
        }else{
            alert(JSON.stringify(err));
        }
});

可用性

ios系统,Android系统

可提供的1.0.0及更高版本

openByUrl

通过url打开电商页面

openByUrl({params},callback(ret,err))

params

url:

  • 类型:字符串
  • 描述:目标打开的url

openType:

  • 类型:字符串
  • 默认:'auto'
  • 描述:(可选项)打开页面的方式
  • 取值范围:
    • 'auto' //智能判断(安装了手淘/天猫时打开手淘/天猫,否则走failModeType模式打开)
    • 'native' //手机淘宝/天猫

linkKey:

  • 类型:字符串
  • 默认:无
  • 描述:(可选项)当打开页面的方式(openType)为native时,设置拉起手淘or天猫。(不传则走百川默认设置,建议传值)
  • 取值范围:
    • 'tmall' //拉起天猫
    • 'taobao' //拉起手淘

pid:

relationId:

  • 类型:字符串
  • 描述:渠道id(非必填项)

materialSourceUrl:

  • 类型:字符串
  • 描述:媒体物料来源url(非必填项):数据链路的回溯支持

tk_extParams:

  • 类型:JSON对象
  • 描述:(可选项)扩展参数(分佣相关的),TaokeParams参数中的extParams字段
  • 内部字段: 请参考百川文档TaokeParams参数中的extParams字段

backUrl:

  • 类型:字符串
  • 默认:无
  • 描述:用于打开手淘时的 “返回(小把手)” 的点击返回,目前ios传空字符串,android传config.xml文件中配置的urlScheme(即tbopen+appkey)

degradeUrl:

  • 类型:字符串
  • 默认:(可选项)无
  • 描述:降级url,如果唤端失败且设置了降级url,则加载该url

failModeType:

  • 类型:字符串
  • 默认:无 (没安装手淘的时候会打开手淘的下载页面--SDK默认逻辑)
  • 描述:用于控制没安装手淘或者没检测到手淘的时候的打开页面逻辑
  • 取值范围:
    • 'h5' //打开H5页面
    • 'none' //不做处理
    • 'download'

trackParams:

  • 类型:JSON对象
  • 默认:null
  • 描述:(可选项)链路跟踪参数(自定义)

callback(ret,err)

ret:

  • 类型:JSON对象
  • 描述:购买成功后返回
  • 内部字段:
{
    status: true,                      //页面打开成功
}

err:

  • 类型:JSON对象
  • 描述:错误时返回
  • 内部字段:
{
    code: 0,                          //页面打开失败
    message : '',                    //字符串,错误信息
}

示例代码

var aliBCzb = api.require('aliBCzb');
aliBCzb.openByUrl(
    {
        url: '....',
        openType:'native',
        backUrl: api.systemType == 'ios' ? '' : 'tbopenXXXX',
        pid:'mm_xxxxxx_xxxxxx'
    },function(ret,err){
        if(ret){
            alert(JSON.stringify(ret));
        }else{
            alert(JSON.stringify(err));
        }
});

可用性

ios系统,Android系统

可提供的1.0.0及更高版本