更新记录

1.0.3(2020-09-22)

1.优化业务逻辑

1.0.2(2020-09-10)

1.安卓升级为官方v3.1.0版本

2.ios升级为官方v3.0.0版本

3.ios全面替换uiwebview为wkwebview

1.0.1(2019-12-17)

1.修复IOS打开我的购物车页面唤端方式参数失效的BUG。

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 10.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:9 - 13

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


声明

“京东开普勒”商标权属于北京京东叁佰陆拾度电子商务有限公司,本插件仅调用京东开普勒SDK,京东开普勒SDK是完全免费的,收费是插件收费,和京东开普勒sdk无关。本插件仅用作使uniapp项目(混合)拥有调用原生能力,不对京东开普勒sdk作任何对二次修改。

插件简介

UZK-JDkepler插件 封装了京东开普勒SDK,能够使你的app具备任何京东链接拉起到京东客户端app打开,并具备返回键返回到你的APP的功能。支持京东授权登录,app内闭环交易。

安卓使用demo

链接:https://pan.baidu.com/s/1jZXiHsoSfE2ff9VWAKTpgA 提取码:xfme

模块使用攻略

使用之前须在京东联盟-》推广管理-》APP管理,创建应用,并获取 appkey。

在使用插件中出现任何问题可以通过邮箱:hkeda@qq.com,或者QQ:474938261与我联系。

准备事项

1.首先在京东联盟创建应用https://union.jd.com/manager/appMng,在京东联盟-》推广管理-》APP管理创建应用并获取appkey

注意安卓平台应用要下载下方的小工具来获取MD5和SHA1值,应用创建成功后,等待审核。

Image text

审核通过后到开普勒控制台https://k.jd.com分别生成ios和android平台最新的SDK,并下载到本地。

Image text

Image text

导入插件相关文件

一.创建插件目录

  • 1.在项目根目录创建nativeplugins目录(如有请忽略)
  • 2.在nativeplugins目录下创建UZK-JDkepler(注意大小写)
  • 3.在UZK-JDkepler目录下分别创建android目录和ios目录

二.导入安卓插件包

  • 1.将下载的安卓sdk解压,并将整个libs目录拷贝到插件目录下到android目录:

Image text

Image text

  • 3.全选UZKJDkepler目录下的文件,压缩为zip,并改后缀为aar

Image text

  • 4.配置完整的安卓目录

Image text

二.导入ios插件包

  • 1.导入SDk,将开普勒控制台下载下来到ios sdk全部文件拷贝到插件目录的ios文件夹下面
  • 2.下载UZKJDkepler.a文件,拷贝到插件目录的ios文件夹下面
  • 3.配置完成后的插件目录

Image text

配置appkey和appsecret

在manifest.json里的APP原生插件配置里面分别填入安卓和IOS的appkey和appsecret。

Image text

IOS 配置urlschemes

在manifest.json 域名视图里面配置IOS的urlschemes

Image text


"ios" : {
                "urltypes" : [
                    {
                        "urlschemes" : [ "sdkback62eb6f5hssuj456fb54ab7646c8"]
                    }
                ],
                "urlschemewhitelist" : "openapp.jdmobile,jdlogin"
            },

其中sdkback后面一串为你京东联盟创建的IOS应用的apkey。

模块接口

方法名 说明
init() 初始化
login() 授权登录
islogin() 判断是否登录
keplerCancelAuth() 清除授权登录
openJDUrlPage() 打开任意京东url
keplerNavigationPage() 打开导航页面
keplerOpenItemDetail() 通过SkuID打开指定商品
keplerOpenOrderList() 打开订单页面
keplerOpenSearchResult() 打开搜索结果页面
keplerOpenShoppingCart() 打开购物车
keplerAddToCartWithSku() 批量加入购物车
keplerFastPurchase() 联盟一键加购
setKeplerJDappBackTagID() 设置开普勒ID

实例化插件 ,在需要用到插件的页面引入


const plug= uni.requireNativePlugin('UZK-JDkepler');

1 . init(),传入参数: 无

京东开普勒SDK插件初始化(使用模块前务必进行一次初始化操作)

示例代码


plug.init(result=>{
  console.log(JSON.stringify(result));
});
  • 初始化成功后,返回数据格式
{   "status":true,
    "msg": "初始化成功",
}
  • 初始化失败,返回数据格式
{   "status":false,
    "msg": "初始化失败",
}

2. login()

京东授权登录

传入的参数无

url:

  • 类型:字符串
  • 描述:(必传)需要打开的京东URL,比如优惠券领券页面

示例代码


plug.login(result=>{
  console.log(JSON.stringify(result));
});

3. islogin()

判断是否已经登录

传入的参数无

示例代码


plug.islogin(result=>{
  console.log(JSON.stringify(result));
});

4. keplerCancelAuth()

清除授权登录

传入的参数无

示例代码


plug.keplerCancelAuth(result=>{
  console.log(JSON.stringify(result));
});

5. openJDUrlPage()

打开任意京东URL

传入的参数

url:

  • 类型:字符串
  • 描述:(必传)需要打开的京东URL,比如优惠券领券页面

opentype:

  • 类型:字符串
  • 默认:native
  • 描述:(非必传)唤端模式:native为:打开京东APP,H5:打开一个webview

userInfo:

  • 类型:JSON对象
  • 描述:(非必传)推广位和自定义参数,详见示例代码
  • customerInfo // 该参数据为第三方应用自定义参数,可以为页面,频道标示,实现统计,打点等需求,在订单维度会存储此字段。 // 传参长度,使用URL encode之后长度必须小于256字节,否则会抛出异常 //严禁传入中文以及以下特殊字符 (=#%&+?< {})
  • positionId:该参数据为联盟推广位ID,需要先在联盟平台union.jd.com的APP管理中创建推广位,只可传入已经创建的推广位ID值,不支持自定义

示例代码


plug.openJDUrlPage({
                    url: "https://u.jd.com/N618at",
                    opentype:"native",
                    userInfo:{
                        customerInfo:'123',//自定义参数,经测试该参数并不会在订单api里透出
                        positionId:'1276520279'//推广位PID
                    }
                }, result => {

                });

6. keplerNavigationPage()

打开京东导航页面

传入的参数

opentype:

  • 类型:字符串
  • 默认:native
  • 可选参数:native/H5
  • 描述:(非必传)唤端模式:native为:打开京东APP,H5:打开一个webview

userInfo:

  • 类型:JSON对象
  • 描述:(非必传)推广位和自定义参数,详见示例代码
  • customerInfo // 该参数据为第三方应用自定义参数,可以为页面,频道标示,实现统计,打点等需求,在订单维度会存储此字段。 // 传参长度,使用URL encode之后长度必须小于256字节,否则会抛出异常 //严禁传入中文以及以下特殊字符 (=#%&+?< {})
  • positionId:该参数据为联盟推广位ID,需要先在联盟平台union.jd.com的APP管理中创建推广位,只可传入已经创建的推广位ID值,不支持自定义

示例代码


plug.keplerNavigationPage({
                    opentype:"native",
                    userInfo:{
                        customerInfo:'123',//自定义参数,经测试该参数并不会在订单api里透出
                        positionId:'1276520279'//推广位PID
                    }
                }, result => {

                });

7. keplerOpenItemDetail()

通过SkuID打开指定商品

传入的参数

sku:

  • 类型:字符串
  • 描述:必传,京东商品id

opentype:

  • 类型:字符串
  • 默认:native
  • 可选参数:native/H5
  • 描述:(非必传)唤端模式:native为:打开京东APP,H5:打开一个webview

userInfo:

  • 类型:JSON对象
  • 描述:(非必传)推广位和自定义参数,详见示例代码
  • customerInfo // 该参数据为第三方应用自定义参数,可以为页面,频道标示,实现统计,打点等需求,在订单维度会存储此字段。 // 传参长度,使用URL encode之后长度必须小于256字节,否则会抛出异常 //严禁传入中文以及以下特殊字符 (=#%&+?< {})
  • positionId:该参数据为联盟推广位ID,需要先在联盟平台union.jd.com的APP管理中创建推广位,只可传入已经创建的推广位ID值,不支持自定义

示例代码


plug.keplerNavigationPage({
                    sku:'61885041487',
                    opentype:"native",
                    userInfo:{
                        customerInfo:'123',//自定义参数,经测试该参数并不会在订单api里透出
                        positionId:'1276520279'//推广位PID
                    }
                }, result => {

                });

8. keplerOpenOrderList()

打开我的订单页面

传入的参数

opentype:

  • 类型:字符串
  • 默认:native
  • 可选参数:native/H5
  • 描述:(非必传)唤端模式:native为:打开京东APP,H5:打开一个webview

userInfo:

  • 类型:JSON对象
  • 描述:(非必传)推广位和自定义参数,详见示例代码
  • customerInfo // 该参数据为第三方应用自定义参数,可以为页面,频道标示,实现统计,打点等需求,在订单维度会存储此字段。 // 传参长度,使用URL encode之后长度必须小于256字节,否则会抛出异常 //严禁传入中文以及以下特殊字符 (=#%&+?< {})
  • positionId:该参数据为联盟推广位ID,需要先在联盟平台union.jd.com的APP管理中创建推广位,只可传入已经创建的推广位ID值,不支持自定义

示例代码


plug.keplerOpenOrderList({
                    opentype:"native",
                    userInfo:{
                        customerInfo:'123',//自定义参数,经测试该参数并不会在订单api里透出
                        positionId:'1276520279'//推广位PID
                    }
                }, result => {

                });

9. keplerOpenSearchResult()

通过关键词打开京东搜索页面

传入的参数

searchKey:

  • 类型:字符串
  • 描述:必传,搜索关键词

opentype:

  • 类型:字符串
  • 默认:native
  • 可选参数:native/H5
  • 描述:(非必传)唤端模式:native为:打开京东APP,H5:打开一个webview

userInfo:

  • 类型:JSON对象
  • 描述:(非必传)推广位和自定义参数,详见示例代码
  • customerInfo // 该参数据为第三方应用自定义参数,可以为页面,频道标示,实现统计,打点等需求,在订单维度会存储此字段。 // 传参长度,使用URL encode之后长度必须小于256字节,否则会抛出异常 //严禁传入中文以及以下特殊字符 (=#%&+?< {})
  • positionId:该参数据为联盟推广位ID,需要先在联盟平台union.jd.com的APP管理中创建推广位,只可传入已经创建的推广位ID值,不支持自定义

示例代码


plug.keplerOpenSearchResult({
                    searchKey:'手机',
                    opentype:"native",
                    userInfo:{
                        customerInfo:'123',//自定义参数,经测试该参数并不会在订单api里透出
                        positionId:'1276520279'//推广位PID
                    }
                }, result => {

                });

10. keplerOpenShoppingCart()

打开我的购物车页面

传入的参数

opentype:

  • 类型:字符串
  • 默认:native
  • 可选参数:native/H5
  • 描述:(非必传)唤端模式:native为:打开京东APP,H5:打开一个webview

userInfo:

  • 类型:JSON对象
  • 描述:(非必传)推广位和自定义参数,详见示例代码
  • customerInfo // 该参数据为第三方应用自定义参数,可以为页面,频道标示,实现统计,打点等需求,在订单维度会存储此字段。 // 传参长度,使用URL encode之后长度必须小于256字节,否则会抛出异常 //严禁传入中文以及以下特殊字符 (=#%&+?< {})
  • positionId:该参数据为联盟推广位ID,需要先在联盟平台union.jd.com的APP管理中创建推广位,只可传入已经创建的推广位ID值,不支持自定义

示例代码


plug.keplerOpenShoppingCart({
                    opentype:"native",
                    userInfo:{
                        customerInfo:'123',//自定义参数,经测试该参数并不会在订单api里透出
                        positionId:'1276520279'//推广位PID
                    }
                }, result => {

                });

11. keplerAddToCartWithSku()

将商品加入购物车

传入的参数

unionID:

  • 类型:字符串
  • 描述:必传,京东联盟ID

appId:

  • 类型:INT
  • 描述:必传,京东联盟创建的应用的APPID

sku:

  • 类型:字符串
  • 描述:必传,商品id

skuCounts:

  • 类型:INT
  • 描述:必传,加入购物车的数量

示例代码


plug.keplerAddToCartWithSku({
                    unionID: 1000579191,
                    appId: 1276162731,
                    sku: "52058054504",
                    skuCounts: 1
                }, result => {
console.log(JSON.stringify(result));

                });

12. keplerFastPurchase()

联盟一键加购

传入的参数

unionID:

  • 类型:字符串
  • 描述:必传,京东联盟ID

appId:

  • 类型:INT
  • 描述:必传,京东联盟创建的应用的APPID

skuID:

  • 类型:字符串
  • 描述:必传,商品id

示例代码


plug.keplerFastPurchase({
                    unionID: 1000579191,
                    appId: 1276162731,
                    skuID:51229964416,    
                }, result => {
console.log(JSON.stringify(result));

                });

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件本身不采集数据,插件使用的 京东开普勒 SDK会采集数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问