NetworkReachabilityManager
と問題があります。Alamofire
です。このサンプルコードで接続をテストしようとしました:Alamofire - NetworkReachabilityManagerが.notReachableで動作しない
override func viewDidLoad() {
super.viewDidLoad()
let manager = NetworkReachabilityManager(host: "www.apple.com")
manager?.listener = { status in
switch status {
case .notReachable:
print("network connection status - lost")
case .reachable(NetworkReachabilityManager.ConnectionType.ethernetOrWiFi):
print("network connection status - ethernet/WiFI")
case .reachable(NetworkReachabilityManager.ConnectionType.wwan):
print("network connection status - wwan")
default:
break
}
}
manager?.startListening()
}
私は無線LANをオフにしようとしましたが、空白の応答しか受信しませんでした。 「ネットワーク接続状態 - 紛失」などの応答はありません。
しかし、私は無線LANをオンにしようとしたとき、私は結果 "ネットワーク接続状態 - イーサネット/ WiFI"が良い応答です。 .notReachable
で何が問題なのでしょうか?任意の提案が高く評価されました。
のようなマネージャーを作成するには、マネージャを聞かせて '宣言されている場合、あなたが投稿することができます= NetworkReachabilityManager(ホスト: "www.apple.com") 'メソッド内? –
@ReinierMelian私の投稿を更新しました。だから、方法はどこにあるのか分かります。 (これらのコードをviewDidLoadメソッドだけでなくてもよい別のメソッドに移動することができます)。 – HotDudeSmith
あなたのUIViewControllerの変数としてマネージャを宣言します。 viewDidLoadでその変数を初期化し、問題が解決するかどうかを私に教えてください。シングルトンクラスでNetworkReachabilityManagerを使用します。 –