iOS-实现淘宝授权登录

第一步,要在阿里百川上添加应用:
(附上阿里百川网址:http://baichuan.taobao.com/)

创建应用

第二步,申请相应的API权限、获取安全图片、下载SDK.
注意:在获取安全图片时,iOS需填写bundleID;安卓需上传安装包(apk文件);


API申请
安全图片获取
下载SDK

第三步,在项目中集成SDK:
[官网技术文档地址:http://baichuan.taobao.com/docs/doc.htm?spm=a3c0d.7629140.0.0.sB9xxL&treeId=129&articleId=105648&docType=1]
【1】将下载的SDK添加至项目中[同时,把下载的yw_1222.png图片文件(安全图片)添加到工程中,缺少该文件会导致AlibcTradeSDK初始化失败];
【2】配置URL Types:
URL Scheme为tbopen{AppKey},如tbopen123456

配置URL Types

【3】配置参数
(1)在info.plist中,增加LSApplicationQueriesSchemes字段,并添加tbopen,tmall
info.plist中增加字段

(2)配置ATS, 允许HTTP请求:


配置ATS

【4】初始化SDK
在 AppDelegate.m 中初始化SDK:

#import 
#import 
#import 
#import 
- (BOOL)application:(UIApplication *)application {
    // 百川平台基础SDK初始化,加载并初始化各个业务能力插件
    [[AlibcTradeSDK sharedInstance] asyncInitWithSuccess:^{
         
    } failure:^(NSError *error) {
        NSLog(@"Init failed: %@", error.description);
    }];
     
    // 开发阶段打开日志开关,方便排查错误信息
    //默认调试模式打开日志,release关闭,可以不调用下面的函数
    [[AlibcTradeSDK sharedInstance] setDebugLogOpen:YES];
     
    // 配置全局的淘客参数
    //如果没有阿里妈妈的淘客账号,setTaokeParams函数需要调用
    AlibcTradeTaokeParams *taokeParams = [[AlibcTradeTaokeParams alloc] init];
    taokeParams.pid = @"mm_XXXXX"; //mm_XXXXX为你自己申请的阿里妈妈淘客pid
    [[AlibcTradeSDK sharedInstance] setTaokeParams:taokeParams];
     
    //设置全局的app标识,在电商模块里等同于isv_code
    //没有申请过isv_code的接入方,默认不需要调用该函数
    [[AlibcTradeSDK sharedInstance] setISVCode:@"your_isv_code"];
     
    // 设置全局配置,是否强制使用h5
    [[AlibcTradeSDK sharedInstance] setIsForceH5:NO];
 
    return YES;
}

【5】点击调起淘宝App或h5页面实现授权:

#import 
#import 
#import 

@property(nonatomic, strong) loginSuccessCallback loginSuccessCallback;
@property(nonatomic, strong) loginFailureCallback loginFailedCallback;

点击按钮,调起淘宝授权页面,效果如下:


淘宝授权页面.png
if(![[ALBBSession sharedInstance] isLogin]){
        [[ALBBSDK sharedInstance] auth:self successCallback:_loginSuccessCallback failureCallback:_loginFailedCallback];
        
        
        
    }else{
        ALBBSession *session=[ALBBSession sharedInstance];
        NSString *tip=[NSString stringWithFormat:@"登录的用户信息:%@",[[session getUser] ALBBUserDescription]];
        NSLog(@"%@", tip);
        
        // 获取淘宝账号信息
        NSString *userStr = [NSString stringWithFormat:@"%@",[[session getUser] ALBBUserDescription]];
        
        
        userStr = [userStr stringByReplacingOccurrencesOfString:@" " withString:@""];
        NSArray *array = [userStr componentsSeparatedByString:@","]; //字符串按照【分隔成数组
        
        
        if (array.count > 1) {
            NSString *nameStr = array[0];
            nameStr = [nameStr substringFromIndex:5];
            NSString *iconStr = array[1];
            iconStr = [iconStr substringFromIndex:10];
            NSLog(@"昵称---%@",nameStr);
            NSLog(@"头像---%@",iconStr);
            
        }

    }

在当前页面写回调方法:

_loginSuccessCallback=^(ALBBSession *session){
        NSString *tip=[NSString stringWithFormat:@"登录的用户信息:%@",[[session getUser] ALBBUserDescription]];
        NSLog(@"%@", tip);
        
            
        }
        
    };
    
    _loginFailedCallback=^(ALBBSession *session, NSError *error){
        NSString *tip=[NSString stringWithFormat:@"登录失败:%@",@""];
        NSLog(@"%@", tip);
        // 绑定失败
        showFadeOutView(@"请您进行淘宝授权后再进行操作", YES, 1);

    };

完成上述步骤之后,便可以实现淘宝授权了。

你可能感兴趣的:(iOS-实现淘宝授权登录)