Схема URL "Открыть настройки" ios

Я знаю, что этот вопрос задавался очень много раз. Ответы говорят, что это не доступно в Xcode > 5.x. но я видел некоторые приложения, которые могут использовать это (Перейти к настройкам)(iOS7). Есть какой-либо способ сделать это? Это доступно в Xcode 6? Facebook может обнаружить как сотовые данные, так и Wi-Fi.

4 ответа

Решение

Начиная с iOS 8, можно запустить приложение "Настройки", которое напрямую открывает раздел "Приложение конфиденциальности" следующим образом:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];

В Свифте:

if let settingsURL = NSURL(string: UIApplicationOpenSettingsURLString) {
    UIApplication.sharedApplication().openURL(settingsURL)
}

В Swift 3.0:

if let settingsURL = URL(string: UIApplicationOpenSettingsURLString + Bundle.main.bundleIdentifier!) {
    UIApplication.shared.openURL(settingsURL as URL)
}

1.- Добавить типы URL введите описание изображения здесь

2.- Использование:

Цель - С

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General"]];

стриж

 UIApplication.sharedApplication().openURL(NSURL(string: "prefs:root=General")!)

3.- Другой путь найти в этом ответе: Настройки запуска iOS -> Схема URL ограничений

Это больше невозможно в iOS 11, мы можем просто открыть Настройки. Вот фрагмент кода Swift 4:

if let url = URL(string:UIApplicationOpenSettingsURLString) {
   if UIApplication.shared.canOpenURL(url) {
     UIApplication.shared.open(url, options: [:], completionHandler: nil)
   }
}

I OS 13, Swift 5.0

Синтаксис для открытых настроек [снова] немного изменился.

if let url = URL(string:UIApplication.openSettingsURLString) {
     if UIApplication.shared.canOpenURL(url) {
       UIApplication.shared.open(url, options: [:], completionHandler: nil)
     }
  }

Оповещения на ваших скриншотах - это системные оповещения. Первое происходит, когда приложение хочет использовать Интернет и заблокировать сотовые данные для приложения (и Wifi не подключен). Второе происходит, когда приложение хочет использовать службы определения местоположения, и вы отключили Wi-Fi. Невозможно управлять отображением этих предупреждений.

В iOS 8 (Xcode 6) есть возможность открывать настройки прямо из приложения. Пожалуйста, прочитайте эту тему: Как открыть настройки программно, как в приложении Facebook?

Открытие приложения "Настройки" из другого приложения

Другие вопросы по тегам