Проверьте подключение к Интернету с помощью PFQueryTableViewController в Swift
У меня есть приложение, над которым я работаю, которое связано с Parse, поэтому я использую PFQueryTableViewController
,
Я просто хотел бы знать, как я могу проверить подключение к Интернету при запуске приложения.
В настоящее время, если я отключаю свое интернет-соединение, а затем запускаю приложение, я получаю загрузочный счетчик для таблицы, но, очевидно, ничего не загружается. В конце концов, спиннер останавливается, и я просто остаюсь с пустым столом.
Я читал об использовании Reachability
, но не совсем уверен, как вставить это в мое текущее приложение.
По сути, мне бы хотелось, чтобы каждый раз, когда пользователь запускал приложение, он проверял подключение к интернету, и если это было замечательно! Если нет, отображается предупреждение "Нет соединения".
Может кто-нибудь помочь, пожалуйста? Я добавил свой код для queryForTable()
функция, где я думаю, что эта проверка должна произойти. Дайте мне знать, если вам нужно увидеть какой-либо другой мой код. Спасибо
override func queryForTable() -> PFQuery {
let query = PFQuery(className: "Reviews")
if indexArray == 0 {
query.orderByDescending("createdAt")
} else if indexArray == 1 {
query.orderByAscending("FilmName")
} else if indexArray == 2 {
query.orderByDescending("OurRating")
} else if indexArray == 3 {
query.orderByAscending("OurRating")
} else if indexArray == 4 {
query.orderByDescending("WantToSeeThisCount")
} else if indexArray == 5 {
query.orderByAscending("DirectedBy")
} else if indexArray == 6 {
query.orderByDescending("UpVoteCount")
} else if indexArray == 7 {
query.orderByDescending("DownVoteCount")
}
query.whereKey("ToDisplayInApp", equalTo:true)
// Add a where clause if there is a search criteria
if filmSearchBar.text != "" {
query.whereKey("FilmName", containsString: filmSearchBar.text!)
}
return query
}
1 ответ
var reachability: Reachability!
func checkNetworkReachability() {
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(functionToHandleWhenConnectionChanges()), name:kReachabilityChangedNotification, object: nil)
if self.reachability == nil {
self.reachability = Reachability.reachabilityForInternetConnection()
self.reachability.startNotifier()
}
}
func functionToHandleWhenConnectionChanges() {
// self.reachability.isReachable() returns a boolean. If it's yes, then you are connected to internet, otherwise not connected.
}
Прежде чем делать все это, добавьте файлы Reachability.h и Reachability.m с https://github.com/tonymillion/Reachability
Надеюсь это поможет:)