您的位置:首页 > 移动开发 > IOS开发

iOS中跳转到系统应用的问题

2016-01-13 19:40 393 查看
需求是:
     当系统的定位服务关闭时如果打开软件的定位按钮需要弹出警告框 ,提示用户软件需要其设备打开定位服务,点击” 设置”按钮跳转到系统的 开启定位的界面。
一开始用的是

NSURL *url = [NSURLURLWithString:@"prefs:root=LOCATION_SERVICES"];
           
if ([[UIApplication
sharedApplication]
canOpenURL:url]) {

                 [[UIApplication
sharedApplication]
openURL: url];
            }
紧紧这段代码可以适合好多的系统,当点击”设置"按钮的时候可以直接跳转到系统设置里的打开定位的界面
但是经过测试人员测试之后出现一个问题 就是在iOS 8.2系统上 点击”设置”按钮后却不发生跳转。在iPod touch(系统7.1 )上也不发生跳转 ,最后查了好久才找到解决的方法,就是在info.plist中添加一个字段 
步奏如下:点击工程—>info—>URLTypes—>点击加号。如下:

这样就能完美跳转了。

注意:有的时候在iOS8.2和iOS7上不添加上面的info信息也能跳转,如果紧紧靠上面的代码遇到不能跳转的问题可以在info中加上上面的信息。

另附上跳转到其他应用的URL:

About — prefs:root=General&path=About

Accessibility — prefs:root=General&path=ACCESSIBILITY

Airplane Mode On — 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 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

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

Wallpaper — prefs:root=Wallpaper
Wi-Fi — prefs:root=WIFI
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: