美文网首页
[iOS] 调起系统设置

[iOS] 调起系统设置

作者: 世上无南西 | 来源:发表于2018-12-29 17:06 被阅读0次

    在项目中,我们经常会遇到使用位置、通知的需求,当用户打开App时,经常喜欢关闭一切提醒的设置,我们需要提供给用户设置这些设置的帮助页面,使用快捷方式的方法设置,提高用户的体验度

    在自己的项目中需要设置我们的代码,在执行的方法中执行如下代码,就会跳到系统的通知的设置中,代码如下:

    Swift:

    let url = NSURL.init(string: "prefs:root=LOCATION_SERVICES")

            if UIApplication.sharedApplication().canOpenURL(url!) {

                UIApplication.sharedApplication().openURL(url!)

            }

    OC:

      NSURL *url = [NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"];

        if ([[UIApplication sharedApplication] canOpenURL:url]) {

            [[UIApplication sharedApplication] openURL:url];

        }

    跳到系统的通知设置页面

    代码如下:

    Swift:

    let url = NSURL.init(string: "prefs:root=NOTIFICATIONS_ID")

            if UIApplication.sharedApplication().canOpenURL(url!) {

                UIApplication.sharedApplication().openURL(url!)

            }

    OC:

      NSURL *url = [NSURLURLWithString:@"prefs:root=NOTIFICATIONS_ID"];

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

            [[UIApplicationsharedApplication] openURL:url];

        }

    要跳转到bundleID:com.hehe.app的App,你可以直接设置prefs:root=NOTIFICATIONS_ID&&path=com.hehe.app

    关于IOS系统功能的URL 汇总列表:

    定位:prefs:root=LOCATION_SERVICES

      蜂窝网络:prefs:root=MOBILE_DATA_SETTINGS_ID

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

            Wi-Fi:prefs:root=WIFI

            定位服务:prefs:root=LOCATION_SERVICES

            个人热点:prefs:root=INTERNET_TETHERING

            关于本机:prefs:root=General&path=About

            辅助功能:prefs:root=General&path=ACCESSIBILITY

            飞行模式:prefs:root=AIRPLANE_MODE

            锁定:prefs:root=General&path=AUTOLOCK

            亮度:prefs:root=Brightness

            蓝牙:prefs:root=General&path=Bluetooth

            时间设置:prefs:root=General&path=DATE_AND_TIME

            FaceTime:prefs:root=FACETIME

            设置:prefs:root=General

            键盘设置:prefs:root=General&path=Keyboard

            iCloud:prefs:root=CASTLE

            iCloud备份:prefs:root=CASTLE&path=STORAGE_AND_BACKUP

            语言:prefs:root=General&path=INTERNATIONAL

            音乐:prefs:root=MUSIC

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

            Music Volume Limit — 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

            Software Update — prefs:root=General&path=SOFTWARE_UPDATE_LINK

            Store — prefs:root=STORE

            Twitter — prefs:root=TWITTER

            Usage — prefs:root=General&path=USAGE

            Wallpaper — prefs:root=Wallpaper

    iOS调用系统功能 

    在iOS开发过程中,有时我们想在应用内实现打电话、发短信、打开Safari浏览器功能,具体常用功能如下: 

    调用打电话功能(此种方法会直接进行拨打电话,电话结束后会留在电话界面)

     if ([[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"tel://135XXXX3453"]])

        {

            [[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"tel://135XXXX3453"]];

        }

    //    调用打电话功能(此种方法会询问是否拨打电话,电话结束后会返回到应用界面,但是有上架App Store被拒的案例)

        if ([[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"telprompt://135XXXX3453"]])

        {

            [[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"telprompt://135XXXX3453"]];

        }

    调用打电话功能(此种方法会询问是否拨打电话,电话结束后会返回到应用界面,此种方法是加载了一个UIWebView实现,支持上架App Store)

     UIWebView *webView = [[UIWebView alloc] init];

        [webView loadRequest:[NSURLRequest

                              requestWithURL:

                              [NSURL URLWithString:@"tel://135XXXX3453"]]];

    [self.view addSubview:webView];

    调用发短信功能(此种方法会直接跳转到给指定号码发送短信,短信结束后会留在短信界面)

    if ([[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"sms://135XXXX3453"]])

        {

            [[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"sms://135XXXX3453"]];

        }

    调用Safari浏览器功能(在开发中遇到应用内打开网页的需求,建议使用UIWebView打开)

     if ([[UIApplication sharedApplication]

             canOpenURL:[NSURL URLWithString:@"http://www.baidu.com/"]])

        {

            [[UIApplication sharedApplication]

             openURL:[NSURL URLWithString:@"http://www.baidu.com/"]];

        }

    相关文章

      网友评论

          本文标题:[iOS] 调起系统设置

          本文链接:https://www.haomeiwen.com/subject/tddplqtx.html