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