From 2004d0578480d12cd69c4d42d414ffd11828d0f1 Mon Sep 17 00:00:00 2001 From: 杨锴 <841720330@qq.com> Date: 星期四, 31 十月 2024 20:18:47 +0800 Subject: [PATCH] fix bug --- XQMuse/SceneDelegate.swift | 53 ++++++++++++++++++++++++++++++----------------------- 1 files changed, 30 insertions(+), 23 deletions(-) diff --git a/XQMuse/SceneDelegate.swift b/XQMuse/SceneDelegate.swift index f16c49f..6215f3d 100644 --- a/XQMuse/SceneDelegate.swift +++ b/XQMuse/SceneDelegate.swift @@ -84,35 +84,42 @@ func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) { - if URLContexts.first?.url.scheme == WeChatAPPID,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.loginByWechat(headImgUrl: u.headimgurl, nickname: u.nickname, sex: u.sex, wxOpenId: u.openid).subscribe(onNext: {data in - if let model = data.data{ - sceneDelegate?.loginSuccess() - JQ_currentViewController().dismiss(animated:true) - UserViewModel.saveLoginInfo(model) + if URLContexts.first?.url.scheme == WeChatAPPID{ - Services.getUserInfo().subscribe(onNext: {data in - if let model = data.data{ - UserViewModel.saveAvatarInfo(model) - } - }).disposed(by: JQ_disposeBag) - } - }).disposed(by: JQ_disposeBag) - }else{ - alertError(msg: "获取信息失败") + 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.loginByWechat(headImgUrl: u.headimgurl, nickname: u.nickname, sex: u.sex, wxOpenId: u.openid).subscribe(onNext: {data in + if let model = data.data{ + sceneDelegate?.loginSuccess() + JQ_currentViewController().dismiss(animated:true) + UserViewModel.saveLoginInfo(model) + + Services.getUserInfo().subscribe(onNext: {data in + if let model = data.data{ + UserViewModel.saveAvatarInfo(model) + } + }).disposed(by: JQ_disposeBag) + } + }).disposed(by: JQ_disposeBag) + }else{ + alertError(msg: "获取信息失败") + } } } } } + }else{ + WXApi.handleOpen(URLContexts.first!.url, delegate: self) } + + } } -- Gitblit v1.7.1