iOS从App跳转至系统设置菜单各功能项的编写方法讲解

时间:2021-09-06 06:29:52

跳到系统设置里的WiFi界面
info里面设置:
在项目中的info.plist中添加 URL types 并设置一项URL Schemes为prefs,如下图

iOS从App跳转至系统设置菜单各功能项的编写方法讲解

代码:

复制代码 代码如下:
NSURL *url = [NSURL URLWithString:@"prefs:root=WIFI"];
if ([[UIApplication sharedApplication] canOpenURL:url])
{
    [[UIApplication sharedApplication] openURL:url];
}

定位服务
定位服务有很多APP都有,如果用户关闭了定位,那么,我们在APP里面可以提示用户打开定位服务。点击到设置界面设置,直接跳到定位服务设置界面。代码如下:

复制代码 代码如下:
//定位服务设置界面
NSURL *url = [NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"];
if ([[UIApplication sharedApplication] canOpenURL:url])
{
    [[UIApplication sharedApplication] openURL:url];
}

这样就可以跳到系统设置的定位服务界面啦!

FaceTime

复制代码 代码如下:
//FaceTime设置界面
NSURL *url = [NSURL URLWithString:@"prefs:root=FACETIME"];
if ([[UIApplication sharedApplication] canOpenURL:url])
{
    [[UIApplication sharedApplication] openURL:url];
}

音乐

复制代码 代码如下:
//音乐设置界面
NSURL *url = [NSURL URLWithString:@"prefs:root=MUSIC"];
if ([[UIApplication sharedApplication] canOpenURL:url])
{
    [[UIApplication sharedApplication] openURL:url];
}

墙纸设置界面

复制代码 代码如下:
//墙纸设置界面
NSURL *url = [NSURL URLWithString:@"prefs:root=Wallpaper"];
if ([[UIApplication sharedApplication] canOpenURL:url])
{
    [[UIApplication sharedApplication] openURL:url];
}

蓝牙设置界面

复制代码 代码如下:
//蓝牙设置界面
NSURL *url = [NSURL URLWithString:@"prefs:root=Bluetooth"];
if ([[UIApplication sharedApplication] canOpenURL:url])
{
   [[UIApplication sharedApplication] openURL:url];
}

iCloud设置界面

复制代码 代码如下:
//iCloud设置界面
NSURL *url = [NSURL URLWithString:@"prefs:root=CASTLE"];
if ([[UIApplication sharedApplication] canOpenURL:url]
{
   [[UIApplication sharedApplication] openURL:url];
}

参数配置
看到这几个例子,大家有没有发现,想跳到哪个设置界面只需要prefs:root=后面的值即可!是的,就是这样的。
我在网上找到一个列表,可以跳到这些界面的参数配置:

iOS从App跳转至系统设置菜单各功能项的编写方法讲解

//打开设置-隐私-照片
    
       [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];