[]####京东对于自己团队开发的开普勒项目,官方说的很屌。作为一种分销模式,对于开发来说,可能并不能够感觉出它的各种屌。最近公司团队有对接京东开普勒,就总结下对接开发京东开普勒的情况吧。

1.首先 提供开发文档地址

https://kepler.jd.com/console/docCenterCatalog/docContent?channelId=45

2.如何对接开普勒

<1>创建京东账号

创建京东账号是比较容易的,因为是公司项目,顾只需要提供公司商务信息和公司营业执照就可以,账号审核时间也比较短,上午提交申请,在下午的时候就会通过,并接听到京东客服人员的电话回访,一般情况下会和京东的商务对接,一般是会加一个微信群。

<2>创建京东项目

现在公司项目,android和ios使用的同一个项目,公众号使用的另一个项目,固创建了两个项目,但是需要特别注意,一个账号,只可以申请5个项目,并且上线后,不可下线。顾亲们一定要慎重。

创建成功后,效果如下图:

在这里,可以直接点击上线,上线只需要点击一下,就过了,但是很悲催的是,后期不可以删除,但可以修改项目名称,这里和其他三大平台有些不一样,亲们一定要注意哈。

<3>申请分销权限

作为一种分销模式存在,故我们需要的首先是开通分销模式,操作如下:

当我们点击申请分销权限之后,会提示我们提交应用[android]以及应用信息,比如

亲们不要以为这就完了,等待审核就好,并不是这样偶,这里是需要和京东商务人员对接,如果部对接,可能很久都不会有反馈偶,这里在对接群中,对接相应的京东商务,会很快得到回应,审核通过,下面就可以集成SDK了。

3.代码实现

<1>集成sdk支持

首先要做的就是集成京东sdk,只需要在开普勒下载sdk就好

下载完成之后,我们需要做的就是,导入我们的项目,本人的as版本比较低,as2.1.2,应本人把下载之后的项目文件改为了jdsdk_lib,顾有一下操作

1)copy sdk into project

2)jdsdk_lib引入项目

因为as版本比较低,顾引用需要认为添加,如下:

settings.gradle

app.gradle

这样,我们的引入工作就完成了,下面就是根据API调用相应的功能

<2>API方法调用

1>初始化京东开普勒

要能够调用其他的功能,需要首先进行京东开普勒初始化,就是在我们的Application中加入initKeplaer()

代码如下

    /**** 初始化开普勒*/private void initJDKepler() {KeplerApiManager.asyncInitSdk(RHApplication.this, RHApplication.JD_APPKEY,    RHApplication.JD_APPSECRET,new AsyncInitListener() {@Overridepublic void onSuccess() {Logs.d(TAG, "Kepler asyncInitSdk onSuccess ");}@Overridepublic void onFailure() {Logs.d(TAG, "Kepler asyncInitSdk 授权失败,请检查lib 工程资源引用;包名,签名证书是否和注册一致");}});}

运行一下,你就会发现,如果你的引用正确,并且APPkey和APPSercert对,就会成功

2>授权登陆

刚开始以为很屌,但实现以及和京东开发对接后,得到结果是,京东授权登陆,只是得到了京东的登陆状态,代码如下,授权成功之后,可以再次授权,不解除绑定也可以再次授权,并且提示授权成功。我的手机测试得到的结果是这样

代码如下:

 /**** 授权开普勒*/@JavascriptInterfacepublic void loginKeplerApp() {if (activity instanceof WebViewActivity || activity instanceof WeViewBackActivity) {KeplerApiManager.getWebViewService().login(activity, new LoginListener() {@Overridepublic void authSuccess(final Object token) {activity.runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(activity, "login成功", Toast.LENGTH_SHORT).show();Logs.e(TAG, "登陆状态:" + KeplerApiManager.getWebViewService().isKeplerLogined());}});}@Overridepublic void authFailed(final int errorCode) {switch (errorCode) {case KeplerApiManager.KeplerApiManagerLoginErr_Init:// 初始化失败break;case KeplerApiManager.KeplerApiManagerLoginErr_InitIng:// 初始化没有完成break;case KeplerApiManager.KeplerApiManagerLoginErr_openH5authPageURLSettingNull:// 跳转urlbreak;case KeplerApiManager.KeplerApiManagerLoginErr_getTokenErr:// 获取失败(oath授权之后,获取cookie过程出错)break;case KeplerApiManager.KeplerApiManagerLoginErr_User_Cancel:// 用户取消break;case KeplerApiManager.KeplerApiManagerLoginErr_AuthErr_ActivityOpen:// 打开授权页面失败break;default:break;}activity.runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(activity, errorCode + ":authFailed", Toast.LENGTH_SHORT).show();}});}});}}

应为官方文档提到,授权成功也不确定一定成功,顾本人使用KeplerApiManager.getWebViewService().isKeplerLogined()方法,确认是否登陆,确认登陆成功,该API调用完成

3>打开首页

打开京东是我们这期项目接入开普勒主要要提供的效果

(1)打开任意京东网页

    /**** 开普勒打开任意url** @param url*/@JavascriptInterfacepublic void openJDHomeWeb(String url) {try {KeplerApiManager.getWebViewService().openJDUrlWebViewPage(url, new KeplerAttachParameter());} catch (Exception e) {//Logs.e(TAG, "哈哈哈哈哈报错了吧:" + e.getMessage());}}

上面代码传任意的京东地址都可以,顾本人写成了公共方法。

(2)打开京东APP首页

 /**** 打开京东首页*/@JavascriptInterfacepublic void openJDHomeApp() {try {KeplerGlobalParameter.getSingleton().setJDappBackTagID(RHApplication.JD_BACKID);mKelperTask = KeplerApiManager.getWebViewService().openJDUrlPage("http://m.jd.com", new KeplerAttachParameter(),activity,new OpenAppAction() {@Overridepublic void onStatus(final int status) {activity.runOnUiThread(new Runnable() {@Overridepublic void run() {if (status == OpenAppAction.OpenAppAction_start) {//开始状态未必一定执行,showWaitPanel("");} else {mKelperTask = null;hideWaitPanel();}}});}}, 15);} catch (Exception e) {e.printStackTrace();}}

设置返回的ID是为了,在京东这里有一个红色的我们的项目的返回view出现,点击它,可以回到我们的APP,这里的id需要和商务人员对接获取

下面提供判断是否安装京东,然后打开htmlorapp

代码如下

    /*** 打开京东首页*/@JavascriptInterfacepublic void openJDHome(){boolean isHavaJD=false;try {if (!new File("/data/data/" + "com.jingdong.app.mall").exists()) {isHavaJD=false;}else{isHavaJD=true;}} catch (Exception e) {isHavaJD=false;}if(isHavaJD){//如果已经安装京东APPopenJDHomeApp();}else{openJDHomeWeb("http://m.jd.com");}

应为本期没有对个别商品做对接,股没有商品id,所以需求也就到此为止,希望本人提供的文档对你有用。

4.注意项:

1.测试与上线区别:京东开普勒,上线状态和测试状态,除了有次数约束之外并没有区别

2.想要京东可以跳转到自己App,必须当前App提供了协议

3.京东开普勒审核更多是用第三方工具私下上午对接催促

4.当调试完成之后,京东商务会要求提供预估单量


5.新版本2.2.2对接【2018年再次对接】

新版本的sdk2.2.2与之前的版本有一些不同,不同点如下,不在需要我们自己去单独下载安全图片,呼起协议,也是必须的了,引用也有一些不同

新版kepler商务sdk合入demo下载地址:

https://download.csdn.net/download/onlymetagain/10434760

android接入京东开普勒-2017年12月对接相关推荐

  1. 京东开普勒php接口,IOS菜鸟初学第十五篇:接入京东开普勒sdk,呼起京东app打开任意京东的链接-Go语言中文社区...

    我之前写了一篇关于接入京东联盟sdk的文章,但是最近,由于这个原因,如下图 导致需要重新集成京东的sdk,但是由于某种原因,因为android和ios端不统一,android接入的是京东开普勒的SDK ...

  2. 京东开普勒iOS端对接遇到的奇葩问题

    最近项目接入京东开普勒,和淘宝客sdk.淘宝还算顺利,京东接口调用折腾了半天,纯粹是纠文字理解.将相关问题和解决办法分享出来,希望大家遇到不会消耗时间. 京东开普勒 API 1.0 SDK 2.x 1 ...

  3. 加推携手京东开普勒打造超级IP名片,让人人都能轻松创业开店!

    等候多时了!加推科技和京东开普勒联手打造的超级IP名片终于上线了!这款名片由智能名片领军者加推科技和京东开普勒联合打造,有京东提供如此丰富商品和快捷物流及售后支持,强强联手,必将在微信的社交电商生态中 ...

  4. 京东开普勒php接口,PHP调用京东联盟开普勒、宙斯API模板

    本篇文章介绍的内容是PHP调用京东联盟开普勒.宙斯API模板 ,现在分享给大家,有需要的朋友可以参考一下 京东开普勒的 Appkey 和 AppSecret 在这里可以看到(需要先创建应用):http ...

  5. python,对京东开普勒接口请求

    京东开普勒简介 京东开普勒买断解决方案是开普勒为企业级客户建立的智能.便捷.定制化的开放平台.通过开放API接口,买断模式可以为企业客户提供包括商品.订单.库存.售后等在内的近百个标准服务接口,实现与 ...

  6. Android京东开普勒

    将sdk添加到项目 方法一 1.在http://kepler.jd.com/console上创建应用,然后选择SDK下载,这里需要上传apk用以读取应用签名和包名等信息来生成安全图片,上传完成后下载s ...

  7. Android 京东开普勒初始化就崩溃的原因

    初始化报错就是因为我没有用import Module的方式导入而是分别拷贝sdk里的资源导致初始化崩溃

  8. 京东开普勒导购模式代码分享[java]

    京东请求工具类 package com.guddqs.utils;import org.jboss.logging.Logger;import java.util.Map; import java.u ...

  9. PHP调用京东联盟开普勒、宙斯API模板

    京东开普勒的 Appkey 和 AppSecret 在这里可以看到(需要先创建应用):http://kepler.jd.com/console/app/app_list.action 授权介绍在这里: ...

最新文章

  1. 微型计算机字长是不是字节的倍数,2014台湾省WORD全国计算机等级考试二级VB考试技巧重点...
  2. JavaScript面向对象编程笔记
  3. 文巾解题 557. 反转字符串中的单词 III
  4. 关于RTP和SRT之间的互操作性,你需要了解什么?
  5. 吸水间最低动水位标高_体验长安逸动EV460:再也不用为电动车续驶里程焦虑了...
  6. 再见 Feign!推荐一款微服务间调用神器,跟 SpringCloud 绝配!
  7. python中从键盘输入列表_在python中为列表使用原始输入
  8. Kernel(核函数)
  9. 我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比
  10. 坦白说php源码,qq坦白说新思路解密 附源码
  11. 如何搭建一个公司网站?
  12. Android 常用框架大全
  13. gitlab 503 错误的解决方案
  14. 华为推出打车平台 Petal,科技大厂再战聚合打车
  15. UVA 10306 e-Coins (二维背包)
  16. 作业2021-03-12
  17. python写井字棋_python 游戏(井字棋)
  18. 腾讯云多维活体检测,让人脸识别更安全
  19. linux time效率,time(),gettimeofday()及GetTickCount()效率比较
  20. 在线语音识别和离线语音识别哪个好

热门文章

  1. 记录:在Ubuntu22.04上安装软件UppASD和Spirit
  2. 【AD】快捷键大全(转载)
  3. 圣诞节快到了,用python、turtle画棵圣诞树吧~
  4. 同事电脑刚进入桌面几秒,就自动重启
  5. PCI-Express1.0总带宽计算
  6. 接口测试测什么?保姆式解读
  7. inno setup 安装setup并让web调用exe
  8. Android基础知识(二十一):Android五大存储之文件存储、Content Provider存储和网络存储
  9. 半导体史上规模最大并购案尘埃落定,对中国影响有多大?
  10. 航天器编队飞行(2):通用的相对轨道描述