From ed1e9e1695be27ade900ea5ad7a64c2c29096ba5 Mon Sep 17 00:00:00 2001
From: lpw
Date: Wed, 14 Jun 2023 09:37:56 +0800
Subject: [PATCH] 添加V2.8.0

---
 frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h |  134 +++++++++++++++++++++++---------------------
 1 files changed, 70 insertions(+), 64 deletions(-)

diff --git a/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h b/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h
index 1bb4189..1708fe0 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h
+++ b/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h
@@ -7,7 +7,7 @@
 ///
 
 #import <UIKit/UIKit.h>
-#import "sdkdef.h"
+#import "SDKDef.h"
 
 @protocol TencentSessionDelegate;
 @protocol TencentLoginDelegate;
@@ -37,57 +37,60 @@
  */
 @interface TencentOAuth : NSObject
 {
-    NSMutableDictionary* _apiRequests;
-	NSString* _accessToken;
-	NSDate* _expirationDate;
+    NSMutableDictionary *_apiRequests;
+	NSString *_accessToken;
+	NSDate *_expirationDate;
 	id<TencentSessionDelegate> _sessionDelegate;
-	NSString* _localAppId;
-	NSString* _openId;
-	NSString* _redirectURI;
-	NSArray* _permissions;
+	NSString *_localAppId;
+	NSString *_openId;
+	NSString *_redirectURI;
+	NSArray *_permissions;
 }
 
 /** Access Token凭证,用于后续访问各开放接口 */
-@property(nonatomic, copy) NSString* accessToken;
+@property(nonatomic, copy) NSString *accessToken;
 
 /** Access Token的失效期 */
-@property(nonatomic, copy) NSDate* expirationDate;
+@property(nonatomic, copy) NSDate *expirationDate;
 
 /** 已实现的开放接口的回调委托对象 */
-@property(nonatomic, assign) id<TencentSessionDelegate> sessionDelegate;
+@property(nonatomic, weak) id<TencentSessionDelegate> sessionDelegate;
 
 /** 第三方应用在开发过程中设置的URLSchema,用于浏览器登录后后跳到第三方应用 */
-@property(nonatomic, copy) NSString* localAppId;
+@property(nonatomic, copy) NSString *localAppId;
 
 /** 用户授权登录后对该用户的唯一标识 */
-@property(nonatomic, copy) NSString* openId;
+@property(nonatomic, copy) NSString *openId;
 
 /** 用户登录成功过后的跳转页面地址 */
-@property(nonatomic, copy) NSString* redirectURI;
+@property(nonatomic, copy) NSString *redirectURI;
 
 /** 第三方应用在互联开放平台申请的appID */
-@property(nonatomic, retain) NSString* appId;
+@property(nonatomic, retain) NSString *appId;
 
 /** 第三方应用在互联开放平台注册的UniversalLink */
-@property(nonatomic, retain) NSString* universalLink;
+@property(nonatomic, retain) NSString *universalLink;
 
 /** 主要是互娱的游戏设置uin */
-@property(nonatomic, retain) NSString* uin;
+@property(nonatomic, retain) NSString *uin;
 
 /** 主要是互娱的游戏设置鉴定票据 */
-@property(nonatomic, retain) NSString* skey;
+@property(nonatomic, retain) NSString *skey;
 
 /** 登陆透传的数据 */
-@property(nonatomic, copy) NSDictionary* passData;
+@property(nonatomic, copy) NSDictionary *passData;
 
 /** 授权方式(Client Side Token或者Server Side Code) */
 @property(nonatomic, assign) TencentAuthMode authMode;
 
 /** union id */
-@property(nonatomic, retain) NSString* unionid;
+@property(nonatomic, retain) NSString *unionid;
 
 /** 第三方在授权登录/分享 时选择 QQ,还是TIM 。在授权前一定要指定其中一个类型*/
 @property(nonatomic, assign) TencentAuthShareType authShareType;
+
+/** SDK打开web登录页,支持自动填充账号  */
+@property (nonatomic, copy) NSString *defaultUin;
 
 /**
  * 获取上次登录得到的token
@@ -123,14 +126,14 @@
  * \return 返回sdk版本号
  **/
 
-+ (NSString*)sdkVersion;
++ (NSString *)sdkVersion;
 
 /**
  * 用来获得当前sdk的小版本号
  * \return 返回sdk小版本号
  **/
 
-+ (NSString*)sdkSubVersion;
++ (NSString *)sdkSubVersion;
 
 /**
  * 用来获得当前sdk的是否精简版
@@ -150,22 +153,9 @@
 + (TencentAuthorizeState *)authorizeState;
 
 /**
- * 用来获得当前手机qq的版本号
- * \return 返回手机qq版本号
- **/
-+ (int)iphoneQQVersion __attribute__((deprecated("已过期, 建议删除调用")));
-
-
-/**
- * 用来获得当前手机TIM的版本号
- * \return 返回手机qq版本号
- **/
-+ (int)iphoneTIMVersion __attribute__((deprecated("已过期, 建议删除调用")));
-
-/**
  * 初始化TencentOAuth对象
- * \param appId 第三方应用在互联开放平台申请的唯一标识
- * \param delegate 第三方应用用于接收请求返回结果的委托对象
+ * \param appId 不可为nil,第三方应用在互联开放平台申请的唯一标识
+ * \param delegate 不可为nil,第三方应用用于接收请求返回结果的委托对象
  * \return 初始化后的授权登录对象
  */
 - (id)initWithAppId:(NSString *)appId
@@ -173,14 +163,52 @@
 
 /**
 * 初始化TencentOAuth对象(>=3.3.7)
-* \param appId 第三方应用在互联开放平台申请的唯一标识
-* \param universalLink 第三方应用在互联开放平台注册的universallink,和bundleID一一对应
-* \param delegate 第三方应用用于接收请求返回结果的委托对象
+* \param appId 不可为nil,第三方应用在互联开放平台申请的唯一标识
+* \param universalLink 可以为nil,第三方应用在互联开放平台注册的UniversalLink,和bundleID一一对应(当为nil时,互联平台会按规则生成universallink,详见官网说明)
+* \param delegate 不可为nil,第三方应用用于接收请求返回结果的委托对象
 * \return 初始化后的授权登录对象
+*
+****【使用说明】*****
+* 1、支持BundleId与UniversalLink的一一对应,主要目的“是为了解决应用的iPhone版本和iPad HD版本共用同一个AppId,导致同时安装情况下的跳转问题"。
+* 2 、由于手Q版本在 >=8.1.8 后才支持了这种对应方式,所以一旦使用,“务必做到”及时知会用户升级手Q版本。
+****
 */
 - (id)initWithAppId:(NSString *)appId
    andUniversalLink:(NSString *)universalLink
         andDelegate:(id<TencentSessionDelegate>)delegate;
+
+/**
+* 初始化TencentOAuth对象(>=3.3.8)
+* \param appId 不可为nil,第三方应用在互联开放平台申请的唯一标识
+* \param enabled  默认为NO,第三方应用是否将sdk和手机QQ的交互方式切换为UniversalLink方式,启用后则在iOS9及以上的系统都会生效UniversalLink方式;否则,默认仅在iOS13及以上的系统生效UniversalLink方式。
+* \param universalLink 可以为nil,第三方应用在互联开放平台注册的UniversalLink,和bundleID一一对应(当为nil时,互联平台会按规则生成UniversalLink,详见官网说明)
+* \param delegate 不可为nil,第三方应用用于接收请求返回结果的委托对象
+* \return 初始化后的授权登录对象
+*
+*****【使用说明】*****
+*  1、支持sdk与手Q的交互切换为UniversalLink模式,主要目的"是为了避免手Q的UrlScheme被其他应用抢注后,导致sdk接口功能受到影响"。
+*  2 、由于手Q版本在 >=8.1.3 后才适配了UniversalLink,所以一旦开启了enabled开关,“务必做到”及时知会用户升级手Q版本。
+*****
+*/
+- (id)initWithAppId:(NSString *)appId
+ enableUniveralLink:(BOOL)enabled
+      universalLink:(NSString *)universalLink
+           delegate:(id<TencentSessionDelegate>)delegate;
+
+/**
+ * 设置用户是否已经授权同意授权隐私协议,在主体应用中,用户同意授权隐私协议后再初始化互联SDK,默认未同意授权
+ * 注意:如未同意授权隐私协议,则互联SDK的所有功能都无法使用,包括初始化!!!
+ * 从3.5.7版本开始支持该方法
+ *
+ * @param isAgreedAuthorization 是否已经授权,isAgreedAuthorization=YES, 表示已经同意授权;isAgreedAuthorization=NO,表示未同意授权,互联SDK的所有功能都无法使用
+ */
++ (void)setIsUserAgreedAuthorization:(BOOL)isUserAgreedAuthorization;
+
+/**
+ * 获取当前用户是否已经同意授权隐私协议
+ * 从3.5.7版本开始支持该方法
+ */
++ (BOOL)isUserAgreedAuthorization;
 
 /**
  * 判断用户手机上是否安装手机QQ
@@ -203,18 +231,6 @@
 + (BOOL)iphoneTIMInstalled;
  
 /**
- * 判断用户手机上的手机QQ是否支持SSO登录
- * \return YES:支持 NO:不支持
- */
-+ (BOOL)iphoneQQSupportSSOLogin __attribute__((deprecated("QQ版本均支持SSO登录。该接口已过期, 建议删除调用")));
-
-/**
- * 判断用户手机上的手机TIM是否支持SSO登录
- * \return YES:支持 NO:不支持
- */
-+ (BOOL)iphoneTIMSupportSSOLogin __attribute__((deprecated("TIM版本均支持SSO登录。该接口已过期, 建议删除调用")));
-
-/**
  * 登录授权
  *
  * \param permissions 授权信息列
@@ -224,20 +240,10 @@
 /**
  * 登录授权
  * \param permissions 授权信息列表
- * \param bInSafari 是否使用safari进行登录.<b>IOS SDK 1.3版本开始此参数废除</b>
- */
-- (BOOL)authorize:(NSArray *)permissions
-		 inSafari:(BOOL)bInSafari;
-
-/**
- * 登录授权
- * \param permissions 授权信息列表
  * \param localAppId 应用APPID
- * \param bInSafari 是否使用safari进行登录.<b>IOS SDK 1.3版本开始此参数废除</b>
  */
 - (BOOL)authorize:(NSArray *)permissions
-       localAppId:(NSString *)localAppId
-		 inSafari:(BOOL)bInSafari;
+       localAppId:(NSString *)localAppId;
 
 /**
  * 登录授权<web为二维码扫码方式>
@@ -383,7 +389,7 @@
 /**
  * 登录时权限信息的获得
  */
-- (NSArray *)getAuthorizedPermissions:(NSArray *)permissions withExtraParams:(NSDictionary *)extraParams;
+- (NSArray *)getAuthorizedPermissions:(NSArray *)permissions withExtraParams:(NSDictionary *)extraParams __attribute__((deprecated("该接口已过期, 建议删除调用")));
 
 /**
  * unionID获得

--
Gitblit v1.8.0