工程中出现prefs:root配置或者代码会被拒!!!
在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等。在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个prefs值,本人是以跳转相册权限为例的,如下图:
参考过其他人写法,只写prefs只跳到设置页面,不能跳到设置-隐私-相册,故而无法完成效果。
跳转系统设置根目录中的项目使用如下的方法:
_array = @[
@{@"系统设置":@"prefs:root=INTERNET_TETHERING"},
@{@"WIFI设置":@"prefs:root=WIFI"},
@{@"蓝牙设置":@"prefs:root=Bluetooth"},
@{@"系统通知":@"prefs:root=NOTIFICATIONS_ID"},
@{@"通用设置":@"prefs:root=General"},
@{@"显示设置":@"prefs:root=DISPLAY&BRIGHTNESS"},
@{@"壁纸设置":@"prefs:root=Wallpaper"},
@{@"声音设置":@"prefs:root=Sounds"},
@{@"隐私设置":@"prefs:root=privacy"},
@{@"APP Store":@"prefs:root=STORE"},
@{@"Notes":@"prefs:root=NOTES"},
@{@"Safari":@"prefs:root=Safari"},
@{@"Music":@"prefs:root=MUSIC"},
@{@"photo":@"prefs:root=Photos"}
];
NSURL * url = [NSURL URLWithString:[_array[index] allValues].firstObject];
[[UIApplicationsharedApplication]openURL:url];
本人使用相册权限:
NSURL * url = [NSURLURLWithString:@"prefs:root=privacy"];
[[UIApplicationsharedApplication]openURL:url];
直接跳到设置-隐私-照片
----------------------------这是个分割线-------------------------------
后来验证了,在真机情况下,以上跳转是正常的,但是有个大问题,那就是提交AppStore的IPA上传有问题,
出现以上问题我也蒙圈了,虽然看不懂,但是大概说的是因为设置的打开隐私的权限,貌似是因为在info.plist设置urltypes的原因,于是我就把prefs:root 这个值去掉,程序照常可以跳转隐私-照片,上传ipa到iTunes connect也成功了。现在就差通过了,静等......
如果能对您有帮助,请帮忙点赞!