应用内跳转到系统设置界面

  • Post author:
  • Post category:其他



从网上查资料都说从iOS 5.1以后的版本系统取消了应用内跳转,但是那个方法也没有被过期,不解,今天正好碰到这个问题,有一个测试机可以跳转到设置界面,其他的就都不可以跳转.研究了一下也从网上找了一些资料,感觉说的不是很详细.自己重新写一遍省的以后自己忘掉.

在需要调转的按钮动作中添加如下的代码,就会跳转到设置中自己的app的设置界面,这里会有通知和位置权限的设置

NSURL * url = [NSURLURLWithString:UIApplicationOpenSettingsURLString];

if([[UIApplicationsharedApplication] canOpenURL:url]) {

    NSURL*url =[NSURLURLWithString:UIApplicationOpenSettingsURLString];          
 [[UIApplicationsharedApplication] openURL:url];  

}


上面的代码只可以跳转到设置界面,这个跳转是不用做任何设置就可以跳转的,假如要跳转到指定的界面, 比如 WiFi 的界面就需要再做进一步的设置 ,首先代码是一样的格式

   NSURL * url = [NSURL URLWithString:@"prefs:root=WIFI"];
    
    if([[UIApplication sharedApplication] canOpenURL:url]) {
        
        NSURL*url =[NSURL URLWithString:UIApplicationOpenSettingsURLString];           [[UIApplication sharedApplication] openURL:url];
        
    }
    


然后在 info.plist 文件中

添加 URL types


添加 URL Schemes 为 prefs的url





或者这样


都可以.


需要注意的是:如果还是不行的话再

请求一下位置权限或者通知权限,才可以跳进自己的app设置里面,如果没有任何权限请求,可能就就只能跳到系统的设置界面;



跳转到其他界面的 URL:




About — prefs:root=General&path=About

Accessibility — prefs:root=General&path=ACCESSIBILITY

AirplaneModeOn— prefs:root=AIRPLANE_MODE

Auto-Lock — prefs:root=General&path=AUTOLOCK

Brightness — prefs:root=Brightness

Bluetooth — prefs:root=General&path=Bluetooth

Date& Time — prefs:root=General&path=DATE_AND_TIME

FaceTime — prefs:root=FACETIME

General— prefs:root=General

Keyboard — prefs:root=General&path=Keyboard

iCloud — prefs:root=CASTLE  iCloud

Storage & Backup — prefs:root=CASTLE&path=STORAGE_AND_BACKUP

International — prefs:root=General&path=INTERNATIONAL

Location Services — prefs:root=LOCATION_SERVICES

Music — prefs:root=MUSIC

Music Equalizer — prefs:root=MUSIC&path=EQ

Music VolumeLimit— prefs:root=MUSIC&path=VolumeLimit

Network — prefs:root=General&path=Network

Nike + iPod — prefs:root=NIKE_PLUS_IPOD

Notes — prefs:root=NOTES

Notification — prefs:root=NOTIFICATIONS_ID

Phone — prefs:root=Phone

Photos — prefs:root=Photos

Profile — prefs:root=General&path=ManagedConfigurationList

Reset — prefs:root=General&path=Reset

Safari — prefs:root=Safari  Siri — prefs:root=General&path=Assistant

Sounds — prefs:root=Sounds

SoftwareUpdate— prefs:root=General&path=SOFTWARE_UPDATE_LINK

Store — prefs:root=STORE

Twitter — prefs:root=TWITTER

Usage — prefs:root=General&path=USAGE

VPN — prefs:root=General&path=Network/VPN

Wallpaper — prefs:root=Wallpaper

Wi-Fi — prefs:root=WIFI

Setting—prefs:root=INTERNET_TETHERING







版权声明:本文为GuoHeroes原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。