无故事王国
2024-03-08 4966eb10cbf5ce9c6ee37a13d393fb0ae2d85b60
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
//
//  SceneDelegate.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/6.
//
 
import UIKit
import SVProgressHUD
import JQTools
 
class SceneDelegate: UIResponder, UIWindowSceneDelegate,WXApiDelegate {
 
                var window: UIWindow?
 
                func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
                                guard let windowScene = (scene as? UIWindowScene) else { return }
                                window = UIWindow(windowScene: windowScene)
                                window?.frame = windowScene.coordinateSpace.bounds
 
 
                                if UserViewModel.getToken() != nil{
                                                app.registerAndLoginSuccess()
                                }else{
                                                let loginNav = LoginNav(rootViewController: LoginVC())
                                                window?.rootViewController = loginNav
                                                window?.makeKeyAndVisible()
                                }
 
                                SVProgressHUD.setContainerView(window)
                                SVProgressHUD.setDefaultStyle(.dark)
                                SVProgressHUD.setDefaultMaskType(.custom) //禁止交互
                                SVProgressHUD.setMinimumDismissTimeInterval(1.5)
                                SVProgressHUD.setMaximumDismissTimeInterval(30.0)
 
                                if #available(iOS 13.0, *) {
                                                window?.overrideUserInterfaceStyle = .light
                                }
 
                }
 
                func scene(_ scene: UIScene, continue userActivity: NSUserActivity) {
                                print("---->4")
                                YYPaymentManager.shared.handleApplication(userActivity)
                }
 
                func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
                                if let code = URLContexts.first?.url.jq_params?["code"]{
                                                DispatchQueue.main.async {
                                                                hiddenHUD()
                                                                let resp = SendAuthResp()
                                                                resp.code = code
                                                                WeChatTools.getAccessToken(resp) { model in
                                                                                if let m = model{
                                                                                                WeChatTools.getUserInfo(access_token: m.access_token, openId: m.openid) { userInfoModel in
                                                                                                                if let u = userInfoModel{
                                                                                                                                Services.wxLogin(openId: u.openid, nickname: u.nickname, headimgurl: u.headimgurl, sex: u.sex).subscribe(onNext: { data in
                                                                                                                                                if let m = data.data{
                                                                                                                                                                if m.isBind == 0{
                                                                                                                                                                                let vc = BindPhoneVC(wxUserInfoModel: u,token: m.token)
                                                                                                                                                                                JQ_currentViewController().jq_push(vc: vc)
                                                                                                                                                                }else{
                                                                                                                                                                                UserViewModel.saveToken(m.token)
                                                                                                                                                                                app.registerAndLoginSuccess()
                                                                                                                                                                }
                                                                                                                                                }
                                                                                                                                }) { error in
                                                                                                                                                alertError(msg: error.localizedDescription)
                                                                                                                                }.disposed(by: JQ_disposeBag)
                                                                                                                }else{
                                                                                                                                alertError(msg: "获取信息失败")
                                                                                                                }
                                                                                                }
                                                                                }
                                                                }
                                                }
                                }
 
                                if ((URLContexts.first?.url.absoluteString.contains("weparklife://safepay")) != nil){
                                                let url = URLContexts.first!.url
                                                YYPaymentManager.shared.handleApplication(UIApplication.shared, open: url, options: [:])
                                }
 
                                if URLContexts.first!.url.host == "resendContextReqByScheme"{
                                                WXApi.handleOpen(URLContexts.first!.url, delegate: YYPaymentManager.shared)
                                }
                }
 
                func sceneDidDisconnect(_ scene: UIScene) {
 
                }
 
                func sceneDidBecomeActive(_ scene: UIScene) {
                                
                }
 
                func sceneWillResignActive(_ scene: UIScene) {
 
                }
 
                func sceneWillEnterForeground(_ scene: UIScene) {
 
                }
 
                func sceneDidEnterBackground(_ scene: UIScene) {
 
                }
}