Как программно открыть приложение настроек?

Я использую swift с ios 8.3. Я хочу открыть приложение настроек из своего приложения. Я знаю, что с помощью кода

UIApplication.sharedApplication().openURL(NSURL(string: UIApplicationOpenSettingsURLString)!)

откроет настройки моего приложения. Но я не хочу открывать настройки своего приложения. Я просто хочу открыть приложение настроек и остаться на главной странице. Если возможно, перейдите к "Сотовая связь". Есть ли способ добиться этого?

Ответ 1

Обновление от 11 октября 2016 года:

Он больше не будет работать в iOS10. До сих пор я не нашел обходного пути. Если у вас есть какие-либо решения, сообщите мне. спасибо.

======================================

если версия iOS <= iOS9, вам нужно установить типы URL: введите описание изображения здесь

Вы можете сделать так:

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

У меня есть демо на github: http://github.com/zhihuitang/SettingDemo.git

И вы можете найти все доступные URL-адреса следующим образом: http://iphonedevwiki.net/index.php/Preferences.app Приложение "Настройки" регистрирует приватную схему URL-адресов, prefs:, список ниже содержит сведения о конкретных представлениях 1 [2]

prefs:root=General&path=About
prefs:root=General&path=ACCESSIBILITY
prefs:root=AIRPLANE_MODE
prefs:root=General&path=AUTOLOCK
prefs:root=General&path=USAGE/CELLULAR_USAGE
prefs:root=General&path=Bluetooth
prefs:root=General&path=DATE_AND_TIME
prefs:root=FACETIME
prefs:root=General
prefs:root=General&path=Keyboard
prefs:root=CASTLE
prefs:root=CASTLE&path=STORAGE_AND_BACKUP
prefs:root=General&path=INTERNATIONAL
prefs:root=LOCATION_SERVICES
prefs:root=ACCOUNT_SETTINGS
prefs:root=MUSIC
prefs:root=MUSIC&path=EQ
prefs:root=MUSIC&path=VolumeLimit
prefs:root=General&path=Network
prefs:root=NIKE_PLUS_IPOD
prefs:root=NOTES
prefs:root=NOTIFICATIONS_ID
prefs:root=Phone
prefs:root=Photos
prefs:root=General&path=ManagedConfigurationList
prefs:root=General&path=Reset
prefs:root=Sounds&path=Ringtone
prefs:root=Safari
prefs:root=General&path=Assistant
prefs:root=Sounds
prefs:root=General&path=SOFTWARE_UPDATE_LINK
prefs:root=STORE
prefs:root=TWITTER
prefs:root=General&path=USAGE
prefs:root=VIDEO
prefs:root=General&path=Network/VPN
prefs:root=Wallpaper
prefs:root=WIFI
prefs:root=INTERNET_TETHERING

надеюсь, что это вам поможет.

Ответ 2

Попробуйте это.

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

Xcode 8.2.1 - iOS 10

Ответ 3

ДА, они внесли изменения в iOS 10, измените "prefs:" на "App-Prefs:"

guard let profileUrl = URL(string:
 "App-Prefs:root=General&path=ManagedConfigurationList") else {
        return
    }

     if UIApplication.shared.canOpenURL(profileUrl) {

     UIApplication.shared.open(profileUrl, completionHandler: { (success) in

        print(" Profile Settings opened: \(success)")

        })
     }

Не забывайте голосовать и отмечайте как правильный ответ