美文网首页
iOS 关于阿里百川对接

iOS 关于阿里百川对接

作者: samtake | 来源:发表于2019-10-25 00:32 被阅读0次

    关于阿里百川的对接,建议使用最新的SDK和文档,在官网上我们也有看到,分了好几个版本,对应的函数也略有出入。

    安全图片

    安全图片一定要确认是最新的。

    URL Schremes

    URL Schremes的设置格式是tbopen{appKey} , 例如tbopen123456

    授权登录

    这里需要两次授权,先是跳转手淘的app授权,接着就是网页授权。为什么需要两次授权呢?这里是有原因的:

    • app授权拿到的token,只针对该用户手机的,而这与后台是不能共用的。所以需要网页授权。
    • 为了拿到网页授权,并且方便用户不需要再次重新输入手淘的账号密码,这就需要用户先通过app授权。
      注意⚠️在第二次的网页授权时,需要传入一个web控制器,并对其加以监听,判断用户点击授权成功后,及时的收起网页授权,从而完成整个交互。
    #pragma mark - 跳转到天猫和淘宝
    -(void)jumpToTaoBaoANdTianMall
    {
        
        [[ALBBSDK sharedInstance] setAuthOption:NormalAuth];
        
        if (!self.jumpMallModel.loginFlag) {
            //未登录的情况
            [[ALBBSDK sharedInstance]setAuthOption:NormalAuth];
            [[ALBBSDK sharedInstance] auth:self.VC successCallback:^(ALBBSession *session) {
                [self authSuccessHandle];
            } failureCallback:^(ALBBSession *session, NSError *error) {
                
            }];
        }else{
            //已授权的情况
            [self jumpTaobaoDetail];
        }
    }
    
    
    #pragma mark - 授权后淘宝跳转
    -(void)authSuccessHandle
    {
         AlibcTradeShowParams* showParam = [[AlibcTradeShowParams alloc] init];
        showParam.openType = AlibcOpenTypeAuto;
        showParam.isNeedPush=NO;
        
        self.taoAuthWebViewController = [WGTaoAuthWebViewController new];
        NSString *webURl = self.jumpMallModel.loginUrl;
        NSInteger res = [[AlibcTradeSDK sharedInstance].tradeService openByUrl:webURl identity:@"trade" webView:self.taoAuthWebViewController.webView parentController:self.taoAuthWebViewController showParams:nil taoKeParams:nil trackParam:nil tradeProcessSuccessCallback:^(AlibcTradeResult * _Nullable result) {
            NSLog(@"result=%@",result);
        } tradeProcessFailedCallback:^(NSError * _Nullable error) {
            NSLog(@"error=%@",error);
        }];
        
    }
    

    跳转到淘宝详情

    #pragma mark - 跳转到淘宝详情
    -(void)jumpTaobaoDetail{
        AlibcTradeShowParams* showParam = [[AlibcTradeShowParams alloc] init];
        showParam.openType = AlibcOpenTypeAuto;
        showParam.isNeedPush=NO;
        showParam.linkKey=@"taobao";
        
        NSInteger res = [[AlibcTradeSDK sharedInstance].tradeService openByUrl:self.jumpMallModel.clickUrl identity:@"trade" webView:nil parentController:self.VC showParams:nil taoKeParams:nil trackParam:nil tradeProcessSuccessCallback:^(AlibcTradeResult * _Nullable result) {
            NSLog(@"result=%@",result);
        } tradeProcessFailedCallback:^(NSError * _Nullable error) {
            NSLog(@"error=%@",error);
        }];
    }
    

    在手淘详情页上返回按钮的icon图标配置

    我看了对应的函数接口参数,都没发觉对应的设置,于是我先怀疑是在跳转的url screme上设置的,然后没有变化。


    image.png

    于是在百川后台设置,考虑到可能会有一定的延迟性,就先设置了,明早上班再去做验证。


    image.png

    ---end

    相关文章

      网友评论

          本文标题:iOS 关于阿里百川对接

          本文链接:https://www.haomeiwen.com/subject/ndujvctx.html