Я работаю над приложением iOS, требующим подключения к Интернету. Я заметил, что приложение FaceBook обновляет экран, чтобы сообщить вам, когда вы потеряли соединение. Он также удаляет предупреждение при восстановлении вашего соединения.Как некоторые приложения iOS знают, когда теряется интернет-соединение
Мой вопрос: как это происходит? Поскольку представление уже загружено, должен существовать некоторый тип уведомления, которое вызывается, если соединение потеряно или восстановлено. Сегодня вечером я установил популярный код Reachability из GitHub, и если я отключу свое соединение после загрузки представления, я не получил уведомление о том, что соединение было потеряно. Я зарегистрировался для уведомления. Код ниже.
override func viewWillAppear(animated: Bool)
{
super.viewWillAppear(animated)
var reachability: Reachability?
//declare this inside of viewWillAppear
do {
reachability = try Reachability.reachabilityForInternetConnection()
} catch {
print("Unable to create Reachability")
return
}
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(TipViewController.reachabilityChanged(_:)),name: ReachabilityChangedNotification,object: reachability)
do{
try reachability?.startNotifier()
}catch{
print("could not start reachability notifier")
}
}
func reachabilityChanged(note: NSNotification) {
let reachability = note.object as! Reachability
if reachability.isReachable() {
if reachability.isReachableViaWiFi() {
print("Reachable via WiFi")
} else {
print("Reachable via Cellular")
}
} else {
print("Network not reachable")
}
}
Любая помощь будет оценена по достоинству.
Любое решение? Способется ли запуск метода при изменении подключения к Интернету? –
Я экспериментировал и решил это. Если я объявлю экземпляр достижимости по всему миру, он сработает. Благодарю. –