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

从网上查资料都说从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


或者这样应用内跳转到系统设置界面_第1张图片

都可以.

需要注意的是:如果还是不行的话再请求一下位置权限或者通知权限,才可以跳进自己的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



你可能感兴趣的:(iOS)