Oauth 模块
- 新浪微博登录
- QQ登录
- 微信登录
- 苹果授权登录
- Google登录
- Facebook登录
需要到各开放平台申请帐号
微博授权登录
添加依赖库及资源
| 依赖库 | 系统库 | 依赖资源 |
|---|---|---|
| liblibOauth.a、libSinaWBOauth.a、liblWeiboSDK.a | ImageIO.framework、libsqlite3.0.tbd | WeiboSDK.bundle |
工程配置
1.在 info.plist 中添加 sinaweibo 字段,填入自己帐号的信息,如下图

注意 SDK 3.2.0+ 必须按照下图填写

2.在工程的 info -> URL types 中添加配置,identifier 填写com.weibo,URL Schemes 填写wb[后面填写appkey],如下图所示

3.在 info.plist 添加 Schemes 白名单

注意 SDK 3.2.0+ 必须按照下图填写

配置Associated Domains(域名)

填写通用链接域名

QQ授权登录
添加依赖库及资源
| 依赖库 | 系统库 | 依赖资源 |
|---|---|---|
| liblibOauth.a、libQQOauth.a、TencentOpenAPI.framework | 无 | 无 |
工程配置
1.在工程的 info -> URL types 中添加配置,identifier 填写tencentopenapi,URL Schemes 填写tencent[后面填写appid],如下图所示

2.在 info.plist 添加 Schemes 白名单

注意 SDK 3.2.0+ 必须按照下图填写
- 在 info.plist 中添加 qq 字段,填入自己帐号的信息

- 配置Associated Domains(域名)

填写通用链接域名

微信授权登录
添加依赖库及资源
| 依赖库 | 系统库 | 依赖资源 |
|---|---|---|
| liblibOauth.a、libWXOauth.a、libWeChatSDK.a | libsqlite3.0.tbd、libz.tbd、CoreTelephony.framework、SystemConfiguration.framework | 无 |
注意:SDK 中的
- libWeChatSDK_pay.a 为带支付功能的微信SDK,支持微信分享、微信支付及微信授权登录功能
- libWeChatSDK.a 为不带支付功能的SDK,仅支持微信分享和授权登录,不使用支付功能请添加此库,避免审核被拒
- 不要同时添加到工程避免冲突
工程配置
1.在工程的 info -> URL types 中添加配置,identifier 填写weixin,URL Schemes 填写wx[后面填写appid],如下图所示

2.在 info.plist 添加 Schemes 白名单

3.配置Associated Domains(域名)

填写通用链接域名

4.在info.plist root 节点添加UniversalLinks字段,值和您在微信开放平台配置的一致,参考如下:(SDK 3.2.0版本以后 此项已废弃,仅保留字段,配置参数已经位置如步骤5所示)

5.在 info.plist 添加 weixin(3.2.0 以前为weixinoauth) 项,填写微信 appid 及 appSecret, UniversalLinks,值和您在微信开放平台配置的一致,参考如下:

苹果授权登录
添加依赖库及资源
| 依赖库 | 系统库 | 依赖资源 |
|---|---|---|
| liblibOauth.a、libAppleOauth.a | AuthenticationServices.framework | 无 |
开启 Sign in with Apple
在原生工程 -> Signing&Capabilities-> + Capability 中添加 Sign in with Apple 服务
证书配置及使用说明请参考 文档
Google登录
添加依赖库及资源
| 依赖库 | 系统库 | 依赖资源 |
|---|---|---|
| liblibOauth.a、libGoogleOauth.a、GoogleSignIn.framework、GoogleSignInDependencies.framework | AuthenticationServices.framework、CoreText.framework、CoreGraphics.framework、LocalAuthentication.framework、SafariServices.framework、Security.framework | GoogleSignIn.bundle |
工程配置
1.在 info.plist 添加 google 项,填写Google clientid,参考如下:

2.在工程的 info -> URL types 中添加配置,identifier 填写google_url, 添加您的反向clientid作为URL Schemes,如下图所示

Facebook登录
添加依赖库及资源
| 依赖库 | 系统库 | 依赖资源 |
|---|---|---|
| liblibOauth.a、libFBOauth.a、FBSDKCoreKit.framework、FBAEMKit.framework、FBSDKCoreKit_Basics.framework、FBSDKLoginKit.framework | libc++.tbd、Accelerate.framework、Accounts.framework、AdSupport.framework、AudioToolbox.framework、CoreGraphics.framework、QuartzCore.framework、Security.framework、Social.framework、StoreKit.framework、 | 无 |
工程配置
1.在 info.plist 添加 FacebookAppID 项,填写Facebook appid,参考如下:

2.在工程的 info -> URL types 中添加配置,identifier 填写facebook,URL Schemes 填写fb[后面填写appid],如下图所示

3.在 info.plist 添加 Schemes 白名单

添加代码
除苹果授权登录外,都需要实现如下方法
在 AppDelegate.m 文件的系统回调方法中调用框架的方法如下
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {[DCUniMPSDKEngine application:app openURL:url options:options];return YES;}- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler[DCUniMPSDKEngine application:application continueUserActivity:userActivity];return YES;}
