iOS第三方平台登录

一、友盟集成第三方登录

1、U-Share集成

2、直接在相关界面中设置UMSocialCore.framework中的 - (void)getUserInfoWithPlatform:(UMSocialPlatformType)platformType currentViewController:(id)currentViewController completion:(UMSocialRequestCompletionHandler)completion; 方法,则在用户成功授权后可在回调block中获取用户基础可见的数据

获取用户QQ信息

参数说明:U-Share第三方登录参数说明

3、依照“登录”接口的参数要求,使用用户的相关数据做登录操作。公司服务器后台会根据上传的用户数据做相关操作(我司的操作是根据用户的相关信息检测是否已注册,若注册则直接登录,若未注册则先为其注册再执行登录)。

ps:用户第三方登录可能会出现以下几种情况:

a、用户手机未安装app则跳转到网页并先进行账号登录再授权,b、安装了app但是未登录 则先跳转到登录页进行账号登录再授权,c、用户已登录第三方app 则直接进行授权。

二、微信授权登录

1、使用cocoaPods集成微信sdk,pod 'WechatOpenSDK' 请参考:cocoaPods使用;或手动下载导入sdk请参考:官方集成文档

2、在appdelegate中引入#import <WXApi.h>并遵从WXApiDelegate协议。

ios10之前的方法

因为上述两个方法在ios10之后被弃用,所以可以用以下方法替换。

ios10之后方法

3、在appdelegate中实现WXApiDelegate协议中的 -(void)onResp:(BaseResp*)resp 方法。sendReq请求调用后,会切换到微信终端程序并显示授权界面。用户授权或取消后会返回到app并回调onResp方法,可在该方法中获取 SendAuthResp中的code参数。

获取code

4、在需要登录的界面中

通过sendReq请求获取code

sendReq请求

通过code获取access_token(即用户授权标识符)

获取access_token

通过access_token获取用户信息

获取用户信息

5、根据相关用户信息调用登录接口做登录操作。

注:关于access_token的有效期请移步:微信官方文档

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,578评论 25 709
  • 前言 友盟能实现分享功能,友盟+申请第三方账号的目的: 进行分享、授权操作需要在第三方平台创建应用并提交审核,友盟...
    CoderZb阅读 13,236评论 8 60
  • 之一 旧友携尘寻踪迹,氤氲雾霭南湖行。 大唐秦韵霓虹闪,铜锅升腾畅聊音。 交易人生悟道行,明鉴真谛心激扬。 叱咤豪...
    晨沣阅读 1,313评论 0 1
  • 已经许久,许久都没有,在深夜里突然地醒来,夜行的车辆,呼啸着驶过车道,带着萧瑟的山风,驶向深夜的远方,直到喧...
    夜里飞行的猫阅读 2,695评论 0 0
  • 阡陌二字,意为小路 带有野花的芬香 带有野狗撒野的脚印 还有村民归家的汗水 时过阡陌 三十年前 小路还不是小路 上...
    时过夏陌阅读 2,767评论 1 4