目錄
1. 跳轉到手機設置界面
2. 打電話/發(fā)短信/email/http/AppStore
3. 跳轉同一開發(fā)者賬號下的其他App
4. 跳轉其他常用應用的URL
5. 短信或web 點擊鏈接跳轉到App(指定頁面)
跳往AppStore項目所在頁面(短信蘸劈、Web鸥滨、微信中可允許跳轉)
https://itunes.apple.com/cn/app/id項目的ID?mt=8
1 從App跳轉到iPhone設置界面
注意:
iOS10 后改為App-Prefs:(有個別失效)
// 跳轉到設置---蜂窩網(wǎng)絡
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"App-Prefs:root=MOBILE_DATA_SETTINGS_ID"]];
系統(tǒng)設置---本應用的設置
UIApplicationOpenSettingsURLString
無線局域網(wǎng)WiFi
App-Prefs:root=WIFI
蜂窩移動網(wǎng)絡
App-Prefs:root=MOBILE_DATA_SETTINGS_ID
個人熱點
App-Prefs:root=INTERNET_TETHERING
通知
App-Prefs:root=NOTIFICATIONS_ID
藍牙
App-Prefs:root=Bluetooth
照片與相機
App-Prefs:root=Photos
通訊錄
App-Prefs:root=ACCOUNT_SETTINGS
電話
App-Prefs:root=Phone
電話鈴聲
App-Prefs:root=Sounds&path=Ringtone
備忘錄
App-Prefs:root=NOTES
Safari
App-Prefs:root=SAFARI
聲音
App-Prefs:root=Sounds
音樂
App-Prefs:root=MUSIC
音樂-均衡器
App-Prefs:root=MUSIC&path=com.apple.Music:EQ
FACEBOOK
App-Prefs:root=FACEBOOK
FaceTime
App-Prefs:root=FACETIME
TWITTER
App-Prefs:root=TWITTER
iTunes Store
App-Prefs:root=STORE
iCloud
App-Prefs:root=CASTLE
iCloud下存儲空間
App-Prefs:root=CASTLE&path=STORAGE_AND_BACKUP
VPN
App-Prefs:root=General&path=VPN
運營商
App-Prefs:root=Carrier
Siri
App-Prefs:root=SIRI
隱私
App-Prefs:root=Privacy
墻紙
App-Prefs:root=Wallpaper
描述文件
App-Prefs:root=General&path=ManagedConfigurationList
系統(tǒng)更新
App-Prefs:root=General&path=SOFTWARE_UPDATE_LINK
通用
App-Prefs:root=General
通用---語言與地區(qū)
App-Prefs:root=General&path=INTERNATIONAL
通用---日期與時間
App-Prefs:root=General&path=DATE_AND_TIME
通用---鍵盤
App-Prefs:root=General&path=Keyboard
通用---輔助功能
App-Prefs:root=General&path=ACCESSIBILITY
通用---關于本機
App-Prefs:root=General&path=About
通用---還原
App-Prefs:root=General&path=Reset
2. 打電話鸥咖、發(fā)短信、跳郵件招狸、跳瀏覽器敬拓、跳AppStore
注意:
iOS10.2之后一定會彈出 系統(tǒng)電話框
// 打電話/發(fā)短信/email/http/AppStore
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://13088888888"]]; // 也可+86
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://13051178888"]];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mail://hello@hello.com"]];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.baidu.com”]];
// https://itunes.apple.com/cn/app/id該項目的ID?mt=8
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"https://itunes.apple.com/cn/app/id12345678?mt=8"]];
// 是否可以打開
BOOL isCanOpen=[[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel://%@",KF_PHONE]]];
// 解決【打電話延遲】添加options參數(shù)——@{}
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:PhoneStr] options:@{} completionHandler:^(BOOL success) {
NSLog(@"phone success");
}];
3. 跳轉同一開發(fā)者賬號下的其他App
App1
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"xxx://www.com.cx?x=1"]];
App2
項目 | Info | URL Types 添加Scheme :xxx
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
//
NSString *schemeStr=url.scheme;
if([schemeStr caseInsensitiveCompare:@"xxx"]==NSOrderedSame){ // 不分大小寫 比較相同
}
}
4. 跳轉其他常用應用的URL
QQ
mqq://
微信
weixin://
淘寶
taobao://
微博
sinaweibo://
支付寶
alipay://
京東
openapp.jdmoble://
人人
renren://
我查查
wcc://
1號店
wccbyihaodian://
有道詞典
yddictproapp://
知乎
zhihu://
優(yōu)酷
youku://
iBook書籍
itms-books://
Map原生地圖
maps://
Facetime視頻
facetime://
點評
dianping:// dianping://search
名片全能王
camcard://
weico微博
weico://
豆瓣fm
doubanradio://
微盤
sinavdisk://
網(wǎng)易公開課
ntesopen://
美團
i**://
5. 短信或Web 通過鏈接跳轉App(指定頁面)2方式
方式一:URL Scheme(裝則跳邻薯,沒裝則不跳)
1. 添加URL Scheme
2. 短信或web中點擊ddd://sssssbbbb則跳到App(沒安裝App則不跳)
但是微信中是不能跳轉的,需使用方式2
3. 做額外處理(如:跳轉到指定頁面)
AppDelegate
- (BOOL)application:(UIApplication *)app
openURL:(NSURL *)url
options:(NSDictionary *)options {
// ddd://id=1234567
NSString *urlStr=url.absoluteString;
if([urlStr hasPrefix:@"ddd"]){ //
NSArray *array=[urlStr componentsSeparatedByString:@"http://"];
}
return true;
}
方式二:通用鏈接(Universal Links)
可用來從微信跳轉到我們的app
1.開發(fā)者中心開啟Associated Domains
2.項目 | Capabilities | Associated Domains 開啟乘凸,并添加applinks:hello(必須以applinks:開頭)
3.創(chuàng)建json文件并命名apple-app-site-association(必須且無后綴厕诡,并上傳到域名根目錄)
{
"applinks": {
"apps": [],
"details": [
{
"appID": "teamId.bundleId”, 需改
"paths": [ "/wwdc/news/", "/videos/wwdc/2015/*"] 可處理哪些路徑
}
]
}
}
驗證json文件的網(wǎng)址:https://search.developer.apple.com/appsearch-validation-tool/
4.AppDelegate
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler{
//
if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]){
NSURL *url = userActivity.webpageURL;
if ([url.absoluteString isEqualToString:@""]){
}else{
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:^(BOOL success) {
}];
}
}
return YES;
}