iOS 隱私權(quán)限和通過openURL實(shí)現(xiàn)跳轉(zhuǎn)實(shí)例
iOS 10之后蘋果對于用戶隱私方面要求非常嚴(yán)格,曾經(jīng)幫朋友發(fā)布純H5的APP,由于使用第三方而未加隱私權(quán)限都不讓提交App Store。這邊就是給大家列舉下蘋果對于最為常見的隱私以及平時我們開發(fā)是會用到的openUrl這方法所用到的key。
一、隱私權(quán)限
當(dāng)然有朋友會說,不加隱私,讓他奔潰后再log中找就好了,通常會導(dǎo)致奔潰的可以這樣做,但是例如定位什么的就不會產(chǎn)生奔潰,直接是定位不出結(jié)果的,這時候就需要自己拼寫了。

<key>NSPhotoLibraryUsageDescription</key> <string>訪問相冊</string> <key>NSCameraUsageDescription</key> <string>訪問相機(jī)</string> <key>NSContactsUsageDescription</key> <string>訪問通訊錄</string> <key>NSMicrophoneUsageDescription</key> <string>訪問麥克風(fēng)</string> <key>NSAppleMusicUsageDescription</key> <string>訪問媒體資料庫</string> <key>NSLocationUsageDescription</key> <string>訪問位置</string> <key>NSLocationWhenInUseUsageDescription</key> <string>使用期間訪問位置</string> <key>NSLocationAlwaysUsageDescription</key> <string>始終訪問位置</string> <key>NSCalendarsUsageDescription</key> <string>訪問日歷</string> <key>NSRemindersUsageDescription</key> <string>訪問提醒事項(xiàng)</string> <key>NSMotionUsageDescription</key> <string>訪問運(yùn)動與健身</string> <key>NSHealthUpdateUsageDescription</key> <string>訪問健康更新 </string> <key>NSHealthShareUsageDescription</key> <string>訪問健康分享</string> <key>NSBluetoothPeripheralUsageDescription</key> <string>訪問藍(lán)牙</string> <key>NSSiriUsageDescription</key> <string>訪問Siri</string> <key>NSSpeechRecognitionUsageDescription</key> <string>訪問語音識別</string>
以上只是列舉了比較常見的。平時開發(fā)中,和手機(jī)數(shù)據(jù)交互,但代碼沒有問題,出現(xiàn)無端bug時可以考慮下是不是隱私權(quán)限問題。
二、openUrl
開發(fā)中使用以下代碼可以實(shí)現(xiàn)快速撥打電話
NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];
if (phoneVersion.floatValue < 10.0) {
//iOS10 以前使用
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"Tel://123456"]];
}
else {
//iOS10 以后使用
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"Tel://123456"]
options:@{}
completionHandler:nil];
}
只要給出對應(yīng)的URL,系統(tǒng)就可以直接跳:
//撥打電話
[NSURL URLWithString:@"tel://123456"]
//發(fā)送短信
[NSURL URLWithString:@"sms://123456"]
//發(fā)郵件
[NSURL URLWithString:@"mailto://123456@163.com"]
//前往App Store
[NSURL URLWithString:@"itms-apps://"]
//使用Safari訪問網(wǎng)址
[NSURL URLWithString:@"http://www.baidu.com"]
//前往iBook
[NSURL URLWithString:@"itms-books://"]
//發(fā)起Facetime
[NSURL URLWithString:@"facetime://"]
//8、調(diào)用 地圖Map
[NSURL URLWithString:@"maps://"]
//9、調(diào)用 Music
[NSURL URLWithString:@"music://"]
//10、跳轉(zhuǎn)到系統(tǒng)設(shè)置相關(guān)界面
// iOS10 以前
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION"] options:@{} completionHandler:nil];
// iOS10 以后
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"App-Prefs:root=LOCATION"] options:@{} completionHandler:nil];
#pragma mark - 以下為跳轉(zhuǎn)設(shè)置的對應(yīng)方式
//設(shè)置
[NSURL URLWithString:UIApplicationOpenSettingsURLString]
//iCloud
[NSURL URLWithString:@"App-Prefs:root=CASTLE"]
//WIFI
[NSURL URLWithString:@"App-Prefs:root=WIFI"]
//藍(lán)牙
[NSURL URLWithString:@"App-Prefs:root=Bluetooth"]
//蜂窩數(shù)據(jù)
[NSURL URLWithString:@"App-Prefs:root=MOBILE_DATA_SETTINGS_ID"]
//通知
[NSURL URLWithString:@"App-Prefs:root=NOTIFICATIONS_ID"]
//通用
[NSURL URLWithString:@"App-Prefs:root=General"]
//關(guān)于手機(jī)
[NSURL URLWithString:@"App-Prefs:root=General&path=About"]
//輔助功能
[NSURL URLWithString:@"App-Prefs:root=General&path=ACCESSIBILITY"]
//日期與時間
[NSURL URLWithString:@"App-Prefs:root=General&path=DATE_AND_TIME"]
//鍵盤設(shè)置
[NSURL URLWithString:@"App-Prefs:root=General&path=Keyboard"]
//顯示與亮度
[NSURL URLWithString:@"App-Prefs:root=DISPLAY"]
//墻紙設(shè)置
[NSURL URLWithString:@"App-Prefs:root=Wallpaper"]
//聲音
[NSURL URLWithString:@"App-Prefs:root=Sounds"]
//Siri
[NSURL URLWithString:@"App-Prefs:root=Siri"]
//隱私
[NSURL URLWithString:@"App-Prefs:root=Privacy"]
//定位
[NSURL URLWithString:@"App-Prefs:root=Privacy&path=LOCATION"]
//電池電量
[NSURL URLWithString:@"App-Prefs:root=BATTERY_USAGE"]
//iTunes Store 與 App Store
[NSURL URLWithString:@"App-Prefs:root=STORE"]
三、總結(jié)
本文只是記錄,方便以后自己查找,有遺漏的歡迎大家指出。以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
iOS實(shí)現(xiàn)應(yīng)用內(nèi)切換語言及字體大小(模仿微信)
這篇文章主要給大家介紹了關(guān)于利用iOS如何實(shí)現(xiàn)應(yīng)用內(nèi)切換語言及字體大小的相關(guān)資料,實(shí)現(xiàn)的效果類似我們經(jīng)常在微信中見到的,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01
關(guān)于iOS自適應(yīng)cell行高的那些事兒
這篇文章主要給大家介紹了關(guān)于iOS自適應(yīng)cell行高的那些事兒,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一看看吧2018-11-11
ios10以下safari設(shè)置style無效的解決方法
這篇文章主要介紹了ios10以下safari設(shè)置style無效的解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-09
淺談關(guān)于如何檢測iOS14本地網(wǎng)絡(luò)權(quán)限的一些思路
這篇文章主要介紹了淺談關(guān)于如何檢測iOS14本地網(wǎng)絡(luò)權(quán)限的一些思路,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
詳解iOS App中UiTabBarController組件的基本用法
UiTabBarController組件即是用來創(chuàng)建App中的Tab視圖切換選項(xiàng)欄,下面將詳解iOS App中UiTabBarController組件的基本用法,包括左右滑動切換標(biāo)簽頁等基本功能的實(shí)現(xiàn),需要的朋友可以參考下2016-05-05
iOS開發(fā)中Quartz2D控制圓形縮放和實(shí)現(xiàn)刷幀效果
這篇文章主要介紹了iOS開發(fā)中Quartz2D控制圓形縮放和實(shí)現(xiàn)刷幀效果的方法,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-12-12
詳談iOS 位置權(quán)限彈出框閃現(xiàn)的問題
下面小編就為大家?guī)硪黄斦刬OS 位置權(quán)限彈出框閃現(xiàn)的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-04-04

