手淘登录授权(非官方)

友盟的第三放登录中并没有淘宝的授权,所以直接去阿里百川下载SDK和集成文档。

** 背景 **
公司产品需要使用手淘授权,但并不使用淘宝的商业功能。

** 必备素材 **

  • SDK。 当前最新SDK版本为AlibcTradeSDK-3.1.1.93.zip 33.5 MB
  • 安全图片。 23K

** 文档地址 **
V3.1文档

首先,推荐使用Pod的方式引入,对于已经使用pod管理第三方库的项目来说,优势很明显。
但是劣势就是集成了全家桶。而且根据文档中的方式,pod一直报错,从pod v1.0.0 ~ v1.2.0,均报错。其中有一个 search json的错误,这个应该算是 cocoapods的bug,按照pod的提示,删除就好。

但是运行 pod install 依然有错误。应该是 pod repo add AliBCSpecs http://repo.baichuan-ios.taobao.com/baichuanSDK/AliBCSpecs.git这个repo 的错误.

不知道为什么没有人提出这个错误。工期原因,只能放弃pod导入,手动引入framwork。

下载SDK

具体说明

  • 基础安全组件(必选)
  • UT(必选)
  • 登陆授权(必选)
  • 基础电商组件(必选)
  • mtop(必选)
  • 登陆绑定(可选)
  • applink(可选)
  • alipay:(可选)
  • 人机识别–安全(可选)
  • 优惠券(可选)
  • 一键加购(可选)

真的是全家桶...

集成

导入需要的库 和 资源

  • AlibabaAuthSDK.framework (247K)
  • AlibabaAuthSDK.bundle

需要在工程中设置 库的路径

导入头文件

#import <AlibabaAuthSDK/ALBBSDK.h>

初始化

******* 为AppKey ,从控制台查找

// ALBBSDKInit() 必须在主线程初始化
dispatch_main_asyn {
  ALBBSDK.sharedInstance().ALBBSDKInit()               
  ALBBSDK.sharedInstance().loginByURL(NSURL(string: "tbopen********"))
  ALBBSDK.sharedInstance().setAppkey("******")
  //     唤起 (客户端 & H5)授权
  ALBBSDK.sharedInstance().setAuthOption(AuthOption(rawValue: 2))

#if DEBUG
  ALBBSDK.sharedInstance().openDebugLog()
#endif
 }
            

授权

  // 获取rootViewController
  let app = UIApplication.sharedApplication().delegate
  guard let window = app?.window , let rootCtrol = window.rootViewController else {
    DDLogError("error! cannot find rootController, oauth failed")
    return
  }
        
// 调取淘宝授权
   ALBBSDK.sharedInstance().auth(rootCtrol,
                                      successCallback: { [unowned Service] (session) in
                                        Service.taobaoLoginSucess(session)
            },
                                      failureCallback: { [unowned Service](session, error) in
                                        Service.taobaoLoginError(error)
            })

处理手淘客户端回调

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url处理回调

以下是swift写法.OC 自行转换

class func handleOpenURL(url: NSURL!) -> Bool {
        let instance = Service
        var handled   = false {
            didSet {
                if handled == true {
                    DDLogVerbose("third share sdk can handel this url: \(url.scheme)")
                }
            }
        }
        ALBBSDK.sharedInstance().loginByURL(url)
        ...
}

配置 Project

参考下边图片,设置标示:

Paste_Image.png
Paste_Image.png

如果环境一样的话,经过以上步骤,就可以实现淘宝登录,经测试,手淘和淘宝HD 均无异常。


补充两个错误码

  • error.code == 1003 用户取消授权 (点击手淘返回按钮,取消授权)
  • error.code == 104 用户取消授权 (点击状态栏左上角返回之前App)
  • error.code == 101 H5用户取消授权 (网页授权取消)

PS: 如果想找专门授权的文档的,还是放弃吧。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,524评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,869评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,813评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,210评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,085评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,117评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,533评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,219评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,487评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,582评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,362评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,218评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,589评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,899评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,176评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,503评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,707评论 2 335

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,058评论 25 707
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,497评论 18 139
  • 项目组件化、平台化是技术公司的共同目标,越来越多的技术公司推崇使用pod管理第三方库以及私有组件,一方面使项目架构...
    swu_luo阅读 21,205评论 0 39
  • 在开发中有时会有这样的需求,就是判断用户输入的手机号码是否正确,这里就需要使用到了正则表达式。这里贴出一个电话号码...
    lhccccc阅读 5,470评论 0 1
  • 大夫让我快乐,可我每次都练习的不好,总会被一眼看穿。 看穿了就很尴尬。 大夫抱怨我不配合治疗,总是没有疗效。我抱怨...
    秦小官阅读 190评论 0 1