У меня есть приложение, которое я тестировал на iOS 10.3 несколько дней назад, и оно работало нормально.Я недавно протестировал его на устройстве iOS 12, и он не работал должным образом.Приложению не удалось подключиться к моему серверу.
После расследования я обнаружил, что для моего приложения выключен переключатель «Мобильные данные» в Настройки -> Имя приложения .После включения он начал работать отлично.
Итак, учитывая этот сценарий, есть ли способ определить состояние этого переключателя из моего кода?Если я могу знать статус и если он выключен, я могу перенаправить пользователя к настройке приложения, используя:
let urlObj = NSURL.init(string:UIApplicationOpenSettingsURLString)
if #available(iOS 10.0, *) {
UIApplication.shared.open(urlObj as! URL, options: [ : ], completionHandler: { Success in
})
} else {
let success = UIApplication.shared.openURL(url as URL)
print("Open \(url): \(success)")
}
PS: Я не ищу решение, использующее Reachability, поскольку ононе совсем надежен.