cdts/xdts-ios 3/TreeHole/CYHResetCode/AppDelegate_Extension/AppDelegate+THSetup.m

129 lines
4.5 KiB
Mathematica
Raw Permalink Normal View History

2023-07-27 09:20:00 +08:00
//
// AppDelegate+THSetup.m
// TreeHole
//
// Created by iOS on 2023/2/2.
//
#import "AppDelegate+THSetup.h"
#import <GTSDK/GeTuiSdk.h>
#import <AppTrackingTransparency/AppTrackingTransparency.h>
#import <AdSupport/ASIdentifierManager.h>
#import "GeTuiServiceTool+QuickAuthorize.h"
@implementation AppDelegate (THSetup)
#pragma mark -
///
- (void)setupReachabilityStatusNotification {
[PYHTTPManager setReachabilityStatusChangeBlock:nil];
}
#pragma mark -
///_SDK
- (void)setupGT_PushWithlaunchingOptions:(NSDictionary *)launchOptions {
// appId appKey appSecret SDK线
[GeTuiSdk startSdkWithAppId:GETUI_APPID appKey:GETUI_APPKEY appSecret:GETUI_APPSECRET delegate:self launchingOptions:launchOptions];
}
#pragma mark -
///SDK
- (void)setupGT_QuickAuthorizeAndPreGetToken {
if (PYAppService.sharedService.gyUid.length) {
[self setGT_QuickAuthorizePreGetToken];
return;
}
[GeTuiServiceTool GT_QuickAuthorizeLoginSetupService:^(BOOL isSuccess, NSError * _Nullable error, NSString * _Nullable gyUid) {
if (!error) { //
[PYAppService sharedService].gyUid = gyUid;
///
[self setGT_QuickAuthorizePreGetToken];
}
}];
}
///--
- (void)setGT_QuickAuthorizePreGetToken {
if ([GeTuiServiceTool isPreGettedTokenValidate]) {
return;
}
[GeTuiServiceTool GT_QuickAuthorizePreLoginGetToken:^(BOOL isSuccess, NSDictionary * _Nonnull tokenDic) {
if ([tokenDic[@"code"] intValue] == 30000) {
///NSLog(@"获取token返回结果%@", tokenDic);
[PYAppService sharedService].gyPreTokenDic = tokenDic;
}
}];
}
#pragma mark - IDFA
- (void)setupIDFA {
if (PYAppService.sharedService.idfa.length > 0) {
return;
}
NSString *invalidIdfa = @"00000000-0000-0000-0000-000000000000";
// PYAppService.sharedService.idfa = invalidIdfa;
if (@available(iOS 14, *)) {
// iOS14
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
// 使idfa
if (status == ATTrackingManagerAuthorizationStatusAuthorized || status == ATTrackingManagerAuthorizationStatusNotDetermined) {
NSString *idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];
NSLog(@"%@",idfa);
//idfa
if (![idfa isEqualToString:invalidIdfa]) {
PYAppService.sharedService.idfa = idfa;
[UserService setIdfa:idfa];
// [PYHTTPManager postWithPath:@"uploadidfa" params:@{@"idfa": idfa} callback:^(id _Nullable rsp, NSError * _Nullable error) {
// //
// }];
}
// [self detectionAd];
} else {
NSLog(@"请在设置-隐私-Tracking中允许App请求跟踪");
}
}];
} else {
// iOS14使
// -广
if ([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) {
NSString *idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];
//idfa
if (![idfa isEqualToString:invalidIdfa]) {
PYAppService.sharedService.idfa = idfa;
[UserService setIdfa:idfa];
// [PYHTTPManager postWithPath:@"uploadidfa" params:@{@"idfa": idfa} callback:^(id _Nullable rsp, NSError * _Nullable error) {
// //
// }];
}
// [self detectionAd];
} else {
NSLog(@"请在设置-隐私-广告中打开广告跟踪功能");
}
}
}
- (void)detectionAd{
/*
if (_isDetectAd > 0) {
return;
}
if ([UserService registerListenerSucceed] == 0) {
_isDetectAd = 1;
///
[PYHTTPManager postWithPath:@"lanuchconfigs" params:@{@"idfa": [UserService idfa]} callback:^(id _Nullable rsp, NSError * _Nullable error) {
if (!error) {
}
}];
}
*/
}
@end