Commit ed5026fa564a6940eb065a01f215d6b58a7298f9

Authored by 张旭
1 parent 9ac40b09

首页监听网络变化

metaCode/Classes/Main/HomePage/Controller/CNMetaCodeHomePageController.swift
@@ -184,6 +184,11 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel @@ -184,6 +184,11 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel
184 184
185 self.setupUI() 185 self.setupUI()
186 186
  187 + /// 通知名
  188 + let notificationName = "CNLiveNetworkStatusNotification"
  189 + /// 自定义通知
  190 + NotificationCenter.default.addObserver(self, selector: #selector(networkStatusNotificationAction), name: NSNotification.Name(rawValue: notificationName), object: nil)
  191 +
187 // self.tabBarController?.tabBar.top = self.tabBarY + KSreenHeight 192 // self.tabBarController?.tabBar.top = self.tabBarY + KSreenHeight
188 193
189 } 194 }
@@ -199,7 +204,11 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel @@ -199,7 +204,11 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel
199 204
200 self.topNavView.isHidden = true 205 self.topNavView.isHidden = true
201 } 206 }
202 - 207 +
  208 + deinit {
  209 + /// 移除通知
  210 + NotificationCenter.default.removeObserver(self)
  211 + }
203 212
204 // MARK: - 添加UI 213 // MARK: - 添加UI
205 func setupUI(){ 214 func setupUI(){
@@ -223,12 +232,26 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel @@ -223,12 +232,26 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel
223 232
224 } 233 }
225 234
226 - // MARK: -按钮点击事件 235 + // MARK: -事件
227 //无网时刷新 236 //无网时刷新
228 @objc func errorFreshButtonAction(){ 237 @objc func errorFreshButtonAction(){
229 self.getUserIdentityApi() 238 self.getUserIdentityApi()
230 } 239 }
231 - 240 + /// 接受到通知后的方法回调
  241 + @objc private func networkStatusNotificationAction(noti: Notification) {
  242 + let netStatus:String = noti.object as! String
  243 + switch netStatus {
  244 +// case "notReachable"://暂时不处理
  245 +
  246 + case "reachableViaWWAN":
  247 + self.getUserIdentityApi()
  248 + case "reachableViaWiFi":
  249 + self.getUserIdentityApi()
  250 + default:
  251 + break
  252 + }
  253 + }
  254 +
232 // MARK: -添加约束 255 // MARK: -添加约束
233 func makeConstraints(){ 256 func makeConstraints(){
234 self.errorImgView.snp.makeConstraints { make in 257 self.errorImgView.snp.makeConstraints { make in
metaCode/Classes/Other/AppDelegate.swift
@@ -20,14 +20,19 @@ class AppDelegate: UIResponder, UIApplicationDelegate { @@ -20,14 +20,19 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
20 CNLiveNetworking.networkStatus { status in 20 CNLiveNetworking.networkStatus { status in
21 21
22 if(status == .notReachable || status == .unknown){ 22 if(status == .notReachable || status == .unknown){
23 - print("notReachable") 23 + /// 发送简单数据
  24 + NotificationCenter.default.post(name: NSNotification.Name.init(rawValue: "CNLiveNetworkStatusNotification"), object: "notReachable")
24 } 25 }
25 if status == .reachableViaWWAN { 26 if status == .reachableViaWWAN {
26 - print("reachableViaWWAN") 27 + /// 发送简单数据
  28 + NotificationCenter.default.post(name: NSNotification.Name.init(rawValue: "CNLiveNetworkStatusNotification"), object: "reachableViaWWAN")
27 } 29 }
28 if status == .reachableViaWiFi { 30 if status == .reachableViaWiFi {
29 - print("reachableViaWiFi") 31 + /// 发送简单数据
  32 + NotificationCenter.default.post(name: NSNotification.Name.init(rawValue: "CNLiveNetworkStatusNotification"), object: "reachableViaWiFi")
30 } 33 }
  34 +
  35 +
31 } 36 }
32 // if statue == .notReachable || statue == .unknown { 37 // if statue == .notReachable || statue == .unknown {
33 //// NSNotification(name: "network_statue", object: "") 38 //// NSNotification(name: "network_statue", object: "")