cdts/xdts-ios 3/Pods/GYSDK/GeYanSdk.framework/Headers/GeYanSdk.h

338 lines
9.9 KiB
C
Raw Normal View History

2023-07-27 09:20:00 +08:00
//
// GySdk.h
// GySdkLib
//
// Created by admin on 2017/4/21.
// Copyright © 2017年 getui. All rights reserved.
//
// GySdk-Version: 2.2.0.0
#import "GyCheckModel.h"
#import "GyAuthViewModel.h"
#import "GyOneLoginPro.h"
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
/**
*
*
* @param isSuccess
* @param error
*/
typedef void (^GyCallback)(BOOL isSuccess, NSError *_Nullable error, NSString *_Nullable gyUid);
/**
*
*
* @param verifyDictionary
*/
typedef void (^GyVerifyCallback)(NSDictionary *_Nullable verifyDictionary);
/**
*
*
* @param smsVerifyDictionary
*/
typedef void (^GySmsVerifyCallback)(NSDictionary *_Nullable smsVerifyDictionary);
/**
*
*
*/
typedef void (^GyReadyAnimationCallback)(void);
/**
*
*/
typedef NS_ENUM(NSUInteger, GyVerifyType) {
/**
* Cloud + Sms
*/
GyVerifyTypeCloudSms,
/**
* Cloud
*/
GyVerifyTypeCloud,
/**
* Sms
*/
GyVerifyTypeSms,
};
@interface GeYanSdk : NSObject
+ (void)setOnlyUseOneLogin:(BOOL)onlyUseOL;
+ (void)setUseStrictMode:(BOOL)strictMode;
/**
* SDK
*
* @param aAppId appid
*/
+ (void)startWithAppId:(NSString *_Nonnull)aAppId withCallback:(GyCallback _Nonnull)callback;
/**
* IDFA
*
* SDK-2.0.6.0+
*
* @param idfa idfa
*/
+ (void)setIDFA:(NSString *_Nonnull)idfa;
/**
* SDK
*
* @param aAppId APPID
* @param timeout ,
* @param callback
*/
+ (void)startWithAppId:(NSString *_Nonnull)aAppId withTimeout:(NSTimeInterval)timeout withCallback:(GyCallback _Nonnull)callback;
/**
*
*
* @param type
* @param pnMD5 md5值,32
* @param smsTemplateId id AppId
* @param callback
*/
+ (void)verifyForType:(GyVerifyType)type withPnMD5:(NSString *_Nonnull)pnMD5 withSmsTemplateId:(NSString *_Nonnull)smsTemplateId withCallback:(GyVerifyCallback _Nonnull)callback;
/**
*
*
* @param code
* @param pnMD5 md5值,32
* @param callback
*/
+ (void)smsVerifyCode:(NSString *_Nonnull)code withPnMD5:(NSString *_Nullable)pnMD5 withCallback:(GySmsVerifyCallback _Nonnull)callback;
/**
*
*
* @param checkModel
* @param callback
*/
+ (void)checkRegister:(GyCheckModel *_Nonnull)checkModel withCallback:(GyVerifyCallback _Nonnull)callback;
/**
*
*
* @param checkModel
* @param callback
*/
+ (void)checkLogin:(GyCheckModel *_Nonnull)checkModel withCallback:(GyVerifyCallback _Nonnull)callback;
/**
*
* @param pnMD5 MD5后的手机号码
* @param accountId accountId
* @param businessId businessId
* @param showLoadingView
* @param readyAnimationCallback
* @param callback
*/
+ (void)nonSenseCaptcha:(NSString *_Nonnull)pnMD5
accountId:(NSString *_Nonnull)accountId
businessId:(NSString *_Nonnull)businessId
isShowLoadingView:(BOOL)showLoadingView
readyAnimation:(GyReadyAnimationCallback _Nonnull)readyAnimationCallback
completeCallback:(GyVerifyCallback _Nonnull)callback;
/**
*
* @param businessId ID
* @param showLoadingView
* @param readyAnimationCallback
* @param callback
*/
+ (void)startAnimationCaptcha:(NSString *_Nonnull)businessId
isShowLoadingView:(BOOL)showLoadingView
isReadyAnimation:(GyReadyAnimationCallback _Nonnull)readyAnimationCallback
completeCallback:(GyVerifyCallback _Nonnull)callback;
#pragma mark 一键登录功能, 包括设置预取号超时时间/预取号/登陆/关闭登陆页面等功能
/**
*
* @param timeout
*/
+ (void)setEloginTimeout:(NSTimeInterval)timeout;
/**
* ,,,
* @param callback
* {
* code = 30000; // NSNumber, 非30000为失败的状态码
* processID = 47dab9b7c26629cd9bc117f88e2f9233; // NSString, 流水号
* operatorType = 4; // NSString, 操作类型
* errorCode = "-30003", // NSString, 运营商返回的错误码
* msg = "\U83b7\U53d6accessCode\U6210\U529f"; // NSString, 运营商返回的描述消息
* metadata = {}; // NSDictionary, 失败时, 运营商的响应内容。
* }
* 1 , 10
*/
+ (void)preGetToken:(GyVerifyCallback _Nonnull)callback;
/**
*
* @param controller viewController
* @param model GYAuthViewModel
* @param callback
* @discussion
* {
* code = 30000; // NSNumber, 非30000为失败的状态码
* processID = 47dab9b7c26629cd9bc117f88e2f9233; // NSString, 流水号
* operatorType = 4; // NSString, 操作类型
* errorCode = "-30003", // NSString, 失败时,运营商返回的错误码
* msg = "\U83b7\U53d6accessCode\U6210\U529f"; // NSString, 描述消息
* metadata = {}; // NSDictionary, 失败时, 运营商的响应内容。
* token = "xxx", //NSString, 登陆成功返回的用户授权凭证信息,可以用于在服务端获取完整手机号码
* expiredTime: 155555555555, //NSInteger,成功时, token有效期
* pn: "133****3333", //NSString,成功时, 脱敏7位手机号码
* }
* @discussion
* token : 2 30 30
*/
+ (void)oneTapLogin:(UIViewController *_Nonnull)controller withViewModel:(GyAuthViewModel *_Nonnull)model andCallback:(GyVerifyCallback _Nonnull)callback;
/**
*
* 使, OneLogin
*/
+ (void)closeAuthVC:(BOOL)animated completion:(void (^ __nullable)(void))completion;
+ (void)closeAuthVC:(void (^ __nullable)(void))completion;
/**
*/
+ (void)stopLoading;
/**
enable授权页面登录按钮
*/
+ (void)enableAuthButton;
/**
disable授权页面登录按钮
*/
+ (void)disableAuthButton;
/**
* @abstract
*
* @param authButtonTitle
*/
+ (void)updateAuthButtonTitle:(NSAttributedString *_Nonnull)authButtonTitle;
/**
* @abstract
*/
+ (BOOL)isProtocolCheckboxChecked;
/**
* @abstract token是否还在有效期
*
* @return YES - oneTapLogin
* NO - preGetToken进行预取号之后再调用oneTapLogin方法进行取号
*/
+ (BOOL)isPreGettedTokenValidate;
/**
*
*/
+ (void)deletePreResultCache;
/**
*
* 使(,,network==1 || network==3)
* carrier: 0. / 1. / 2. / 3.
* network: 0./ 1. / 2.wifi / 3.+wifi
* network即使返回非0, ,访
* {
* carrier: 0/1/2/3
* network: 0/1/2/3
* }
*/
+ (NSMutableDictionary *_Nonnull)currentNetworkInfo DEPRECATED_MSG_ATTRIBUTE("");
/**
* @abstract ViewController
*
* @return ViewController
*/
+ (UIViewController *_Nullable)currentAuthViewController;
/**
*
* @return 0,1,2
*/
+ (NSInteger)getCurrentCarrierCount;
#pragma mark 本机号码校验功能, 与一键登录功能无关联
/**
* processID token
* @param callback
* {
* code: 30000, //NSNumber, 非30000为失败
* msg: "success" // NSString, 返回信息
* phone: "1333333333" // NSString, 输入的手机号
* token: "xxx" // NSString, 授权凭证
* processID: "xxx" // NSString, 流水号
* operatorType = 4; // NSString, 操作类型
*
* }
*/
+ (void)getPhoneVerifyTokenCallback:(GyVerifyCallback _Nonnull)callback;
/**
* ,使
* ,使 getPhoneVerifyToken:andCallback
* @param pn
* @param token getPhoneVerifyToken token
* @param processId getPhoneVerifyToken processId
* @param callback
* {
* code: 30000, //NSNumber, 非30000为失败
* msg: "success" // NSString, 返回信息
* }
*/
+ (void)checkPhoneNumber:(NSString *_Nonnull)pn withToken:(NSString *_Nonnull)token withProcessId:(NSString *_Nonnull)processId withOperatorType:(NSString *_Nonnull)opType andCallback:(GyVerifyCallback _Nonnull)callback;
+ (void)checkPhoneNumber:(NSString *_Nonnull)pn andCallback:(GyVerifyCallback _Nonnull)callback __deprecated_msg("请使用 checkPhoneNumber:withToken:withProcessId:andCallback");
/**
* SDK版本号
*
* @return SDK版本号
*/
+ (NSString *_Nonnull)getVersion;
/**
* debug模式
* @param debug
*/
+ (void)setDebug:(BOOL)debug;
/**
* SDK
*/
+ (void)destroy;
+ (nullable NSString *)gyuid;
@end