O2ReachabilityManager.swift 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. //
  2. // O2ReachabilityManager.swift
  3. // O2Platform
  4. //
  5. // Created by 刘振兴 on 2017/6/2.
  6. // Copyright © 2017年 zoneland. All rights reserved.
  7. //
  8. import Foundation
  9. import Alamofire
  10. import CocoaLumberjack
  11. class O2ReachabilityManager {
  12. static let sharedInstance = O2ReachabilityManager()
  13. private let networkReachabilityManager:NetworkReachabilityManager!
  14. private init() {
  15. networkReachabilityManager = NetworkReachabilityManager()
  16. // networkReachabilityManager.startListening { (netStatus) in
  17. // switch netStatus {
  18. // case .unknown:
  19. // DDLogError("未知网络 unknown")
  20. // break;
  21. // case .notReachable:
  22. // DDLogError("没有联网,请连接网络 notReachable")
  23. // break;
  24. // case .reachable:
  25. // let msg = "网络是可用的,"
  26. // if self.networkReachabilityManager.isReachableOnCellular {
  27. // DDLogInfo("\(msg)现在使用的是移动网络")
  28. // }
  29. // if self.networkReachabilityManager.isReachableOnEthernetOrWiFi {
  30. // DDLogInfo("\(msg)现在使用的是WiFi")
  31. // }
  32. // break;
  33. // }
  34. // }
  35. // networkReachabilityManager.listener = { netStatus in
  36. // switch netStatus {
  37. // case .unknown:
  38. // DDLogError("未知网络 unknown")
  39. // break;
  40. // case .notReachable:
  41. // DDLogError("没有联网,请连接网络 notReachable")
  42. // break;
  43. // case .reachable:
  44. // let msg = "网络是可用的,"
  45. // if self.networkReachabilityManager.isReachableOnWWAN {
  46. // DDLogInfo("\(msg)现在使用的是移动网络")
  47. // }
  48. // if self.networkReachabilityManager.isReachableOnEthernetOrWiFi {
  49. // DDLogInfo("\(msg)现在使用的是WiFi")
  50. // }
  51. // break;
  52. // }
  53. // }
  54. }
  55. public func startListening() -> Void {
  56. self.networkReachabilityManager.startListening { (netStatus) in
  57. switch netStatus {
  58. case .unknown:
  59. DDLogError("未知网络 unknown")
  60. break;
  61. case .notReachable:
  62. DDLogError("没有联网,请连接网络 notReachable")
  63. break;
  64. case .reachable:
  65. let msg = "网络是可用的,"
  66. if self.networkReachabilityManager.isReachableOnCellular {
  67. DDLogInfo("\(msg)现在使用的是移动网络")
  68. }
  69. if self.networkReachabilityManager.isReachableOnEthernetOrWiFi {
  70. DDLogInfo("\(msg)现在使用的是WiFi")
  71. }
  72. break;
  73. }
  74. }
  75. }
  76. public func stopListening() -> Void {
  77. self.networkReachabilityManager.stopListening()
  78. }
  79. }