我之前写了一篇关于接入京东联盟sdk的文章,但是最近,由于这个原因,如下图
导致需要重新集成京东的sdk,但是由于某种原因,因为android和ios端不统一,android接入的是京东开普勒的SDK,这次为了统一,所以又搞了一次集成这个,之前那个不要了。但我估计哈,这次更新是京东联盟的sdk,跟这个不一样,所以我后面还是要集成最新的京东联盟sdk(它这次更新要求重新创建一个新应用,才能下载最新的sdk,所以还需要审核好久,坑爹呢)。
好了说了原由,讲一下这次集成不一样的的地方。京东的东西就是坑爹。。。坑了我好几次哟。
1. 流程跟之前那个差不多,跟着文档走就好
贴一下ios端的sdk集成文档链接:http://kepler.jd.com/console/docCenterCatalog/docContent?channelId=46
2. 好了,啥都弄好了,但是这次调用跳转到方式不一样了,看代码是要在应用内加载京东页面
下面是加载url的方法
//获取当前的viewcontroller
UIWindow * window = [[UIApplication sharedApplication] keyWindow];
UITabBarController *tabBarController = (UITabBarController *)window.rootViewController;
UINavigationController *navController = tabBarController.selectedViewController;
UIViewController *serviceViewController = navController.topViewController;
//调用应用本身的viewcontroller打开链接
[[KeplerApiManager sharedKPService] openKeplerPageWithURL:jdlink sourceController:serviceViewController jumpType:2 userInfo:nil];
贴一下它打开链接的效果:
很明显看到它是在应用内打开一个webview 加载那条连接的。
好吧,这就是他所说的闭环交易
但是你想要跳转京东app怎么办?
哇,贴心的ios sdk集成文档说的很清楚了
只要将isOpenByH5设置为NO就行了,然后呢???
他有没文档说明,在哪里设置啊,怎么设置啊
他以为这样能难住我??
no no no
3.设置isOpenByH5为NO,呼起京东app家在链接
经过我一番努力,在你要使用京东跳转的地方
//获取当前的viewcontroller
UIWindow * window = [[UIApplication sharedApplication] keyWindow];
UITabBarController *tabBarController = (UITabBarController *)window.rootViewController;
UINavigationController *navController = tabBarController.selectedViewController;
UIViewController *serviceViewController = navController.topViewController;
//调用京东app打开链接
KeplerApiManager *ap = [KeplerApiManager sharedKPService];
//设置isOpenByH5 属性为NO
ap.isOpenByH5 = NO;
[ap openKeplerPageWithURL:jdlink sourceController:serviceViewController jumpType:2 userInfo:nil];
贴一下效果:
好了,总算能跳转加载了。
嗯嗯,那个返回按钮呢???
原来在这呢?
但是tagID 是哪个。咋没看到哪有。
最后找到这段解释:
我去尼玛的,不用了。等审核通过。
最后,安利下这款软件,返现易,不吹不黑,有时候他的返利高过一些官方的返利平台,比如一淘。还有很多其他平台的返利,机票,酒店住宿啥的都有。
25天过期哦,要弄的尽快弄吧。