Swift3.0 通过AFNetworking监听判断网络连接状态
2016-11-10 18:01
260 查看
func networkStatusListener() {
// 1、设置网络状态消息监听
NotificationCenter.default.addObserver(self, selector:#selector(self.networkStatusChange),
name: NSNotification.Name.AFNetworkingReachabilityDidChange, object:nil);Swift
// 2、获得网络Reachability对象
// Reachability必须一直存在,所以需要设置为全局变量
// 3、开启网络状态消息监听
AFNetworkReachabilityManager.shared().startMonitoring()
}
func networkStatusChange() {
if AFNetworkReachabilityManager.shared().isReachable {//
判断网络连接状态
print("网络连接:可用")
if AFNetworkReachabilityManager.shared().isReachableViaWiFi {//
判断网络连接类型
print("连接类型:WiFi")
} elseif AFNetworkReachabilityManager.shared().isReachableViaWWAN {
print("连接类型:移动网络")
}
self.showHud(in:self.view, hint: messageLogin)
let params = ["token":token!]
sendDepartmentRequest(params: params)
}else{
print("网络连接:不可用")
print("连接类型:没有网络连接")
self.showHint("当前网络不可用")
}
}
/**
移除消息通知
*/
func removeNotificationCenter(){
print("移除消息通知")
// 关闭网络状态消息监听
AFNetworkReachabilityManager.shared().stopMonitoring()
// 移除网络状态消息通知
NotificationCenter.default.removeObserver(self);
}
// 1、设置网络状态消息监听
NotificationCenter.default.addObserver(self, selector:#selector(self.networkStatusChange),
name: NSNotification.Name.AFNetworkingReachabilityDidChange, object:nil);Swift
// 2、获得网络Reachability对象
// Reachability必须一直存在,所以需要设置为全局变量
// 3、开启网络状态消息监听
AFNetworkReachabilityManager.shared().startMonitoring()
}
func networkStatusChange() {
if AFNetworkReachabilityManager.shared().isReachable {//
判断网络连接状态
print("网络连接:可用")
if AFNetworkReachabilityManager.shared().isReachableViaWiFi {//
判断网络连接类型
print("连接类型:WiFi")
} elseif AFNetworkReachabilityManager.shared().isReachableViaWWAN {
print("连接类型:移动网络")
}
self.showHud(in:self.view, hint: messageLogin)
let params = ["token":token!]
sendDepartmentRequest(params: params)
}else{
print("网络连接:不可用")
print("连接类型:没有网络连接")
self.showHint("当前网络不可用")
}
}
/**
移除消息通知
*/
func removeNotificationCenter(){
print("移除消息通知")
// 关闭网络状态消息监听
AFNetworkReachabilityManager.shared().stopMonitoring()
// 移除网络状态消息通知
NotificationCenter.default.removeObserver(self);
}
相关文章推荐
- Android 通过注册广播,实时监听网络连接与断开状态的变化
- 网络判断网络连接有多种办法,通过C#程序也可以判断与远程主机的连接状态。具体实现方法
- Android中监听判断网络连接状态的方法
- iOS开发——Reachability和AFNetworking判断网络连接状态
- Android中监听判断网络连接状态的方法
- 网络连接状态的监听和判断
- iOS开发——Reachability和AFNetworking判断网络连接状态
- C#通过系统API判断网络连接类型及状态
- Android开发监听判断网络连接状态的方法
- android手机网络状态监听,判断手机连接的是移动网络还是wifi等
- Android中监听判断网络连接状态的方法
- AFNetWorking 监听网络连接的状态
- Android 判断及监听网络连接状态
- Android中判断网络连接状态
- android判断网络连接状态-ConnectivityManager
- Android: 判断网络连接状态及连接类型
- [置顶] 判断Adndroid手机的网络连接状态
- LabVIEW调用system32中的wininet.dll判断计算机网络连接状态
- 调用系统API判断网络连接状态
- C#中判断网络连接的状态