CNLIVEAppDelegate.m 5.85 KB
//
//  CNLIVEAppDelegate.m
//  CNLivePayCostModule
//
//  Created by woshiliushiyu on 05/12/2022.
//  Copyright (c) 2022 woshiliushiyu. All rights reserved.
//

#import "CNLIVEAppDelegate.h"
#import "CNLIVEViewController.h"
#import <CNLivePayCostModule/CNLivePayCostHeader.h>
#import <CNLivePayCostModule/CNLivePayCostModel.h>
@implementation CNLIVEAppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
    [CNLivePayCostModule finishLaunchingWithPayPluginSettings];
    
    [CNUserInfoManager manager].userInfoModel.uid = @"10458139";
    
    UINavigationController *navCtrl = [[UINavigationController alloc] initWithRootViewController:[[CNLIVEViewController alloc] init]];

    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    self.window.rootViewController = navCtrl;
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];
    
    [self setParamNet];
    
    return YES;
}
-(void)setParamNet
{
    NSMutableDictionary * mDict = [[NSMutableDictionary alloc] init];
    [mDict setValue:[CNUserInfoManager manager].userInfoModel.uid forKey:@"loginSid"];
    [mDict setValue:@"com.cnlive.CNLiveNetAdd.debug" forKey:@"platform_id"];
    [mDict setValue:[[[[UIDevice currentDevice] identifierForVendor] UUIDString] stringByReplacingOccurrencesOfString:@"-" withString:@""] forKey:@"uuid"];
    [mDict setValue:@"i" forKey:@"plat"];
    [mDict setValue:[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] forKey:@"ver"];
    [mDict setObject:AppId forKey:@"appId"];
    [mDict setObject:[CNUserInfoManager manager].userInfoModel.uid forKey:@"sid"];
    [CNLiveNetworking setupDefaultParam:mDict];
    [CNLiveNetworking setupShowResult:NO];
    [CNLiveNetworking setupSignKey:APPKey];
    [CNLiveNetworking setAllowRequestDefaultArgument:YES];
    [CNLiveNetworking setResponseSerializerType:CNLiveResponseSerializerJSON];
}


- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    NSString *string =[url absoluteString];
    if ([string hasPrefix:@"CNLiveNetAddTestUnionPaySchems://"] || [string hasPrefix:@"CNLiveNetAddUnionPaySchems://"])
    {
        return [UMSPPPayUnifyPayPlugin cloudPayHandleOpenURL:url];
    }
    return  [UMSPPPayUnifyPayPlugin handleOpenURL:url otherDelegate:[CNLivePayCostModel sharePayCostModel]];
}

- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation {
    
    NSString *string =[url absoluteString];
    if ([string hasPrefix:@"CNLiveNetAddTestUnionPaySchems://"] || [string hasPrefix:@"CNLiveNetAddUnionPaySchems://"])
    {
        return [UMSPPPayUnifyPayPlugin cloudPayHandleOpenURL:url];
    }
    
    return [UMSPPPayUnifyPayPlugin handleOpenURL:url otherDelegate:[CNLivePayCostModel sharePayCostModel]];
}


- (BOOL)application:(UIApplication *)app
            openURL:(NSURL *)url
            options:(NSDictionary<NSString *,id> *)options{
    
    NSString *string =[url absoluteString];
    if ([string hasPrefix:@"CNLiveNetAddTestUnionPaySchems://"] || [string hasPrefix:@"CNLiveNetAddUnionPaySchems://"])
    {
        return [UMSPPPayUnifyPayPlugin cloudPayHandleOpenURL:url];
    }
    else if ([string hasPrefix:@"qmfpppay://"])
    {
        [UMSPPPayUnifyPayPlugin aliMiniPayHandleOpenURL:url];
        return YES;
        
    }
    [UMSPPPayUnifyPayPlugin aliMiniPayHandleOpenURL:url];
    [WXApi handleOpenURL:url delegate:[CNLivePayCostModel sharePayCostModel]];
    return [UMSPPPayUnifyPayPlugin handleOpenURL:url otherDelegate:[CNLivePayCostModel sharePayCostModel]];
};

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler  API_AVAILABLE(ios(8.0)){
    if (@available(iOS 8.0, *)) {
        [WXApi handleOpenUniversalLink:userActivity delegate:[CNLivePayCostModel sharePayCostModel]];
        return [UMSPPPayUnifyPayPlugin handleOpenUniversalLink:userActivity otherDelegate:[CNLivePayCostModel sharePayCostModel]];
    } else {
        // Fallback on earlier versions
        return YES;
    }
    
}


- (void)applicationWillResignActive:(UIApplication *)application
{
    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
}

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}

- (void)applicationWillTerminate:(UIApplication *)application
{
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}

@end