iOS - URL Schema
?
2019.04.17 14:57?字數(shù) 268?閱讀 371評論 0喜歡 0
一崇堰、Schema簡介和使用
注冊Schema(可參考:自定義 URL Scheme 完全指南)
在Info.plist中進行配置
URL Identifier虚青,一個字符串對象。該字符串是你自定義的 URL scheme 的名字苞也。建議采用反轉(zhuǎn)域名的方法保證該名字的唯一性洛勉,比如 com.yourCompany.yourApp。
接收schema并處理
- (BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary *)options {NSLog(@"從哪個app跳轉(zhuǎn)而來 Bundle ID: %@", options[UIApplicationOpenURLOptionsSourceApplicationKey]);NSLog(@"URL scheme:%@", [url scheme]);NSLog(@"URL query:%@", [url query]);// 允許打開returnYES;}
調(diào)用APP的生命周期
關(guān)于App間的跳轉(zhuǎn)問題?官網(wǎng) - Inter-App Communication
如果待調(diào)用的App已經(jīng)運行了,那么它的生命周期如下:
如果待調(diào)用的App在后臺,那么它的生命周期如下:
二虚茶、調(diào)用自定義 URL Scheme
2.1耕挨、從 Safari 中調(diào)用自定義 URL Scheme
從 Safari 中調(diào)用自定義 URL Scheme.gif
2.2、從另一個 iPhone 應(yīng)用中調(diào)用自定義 URL Scheme
-(void)btnCallBack {NSURL*URL = [NSURLURLWithString:@"LionsomApp://"];if(@available(iOS10.0, *)) {? ? ? ? [[UIApplicationsharedApplication] openURL:URL options:@{} completionHandler:^(BOOLsuccess) {NSLog(@"iOS10 - 跳轉(zhuǎn)成功R衷隆V窆邸土辩!");? ? ? ? }];? ? }else{// Fallback on earlier versionsNSLog(@"iOS9 - 跳轉(zhuǎn)成功J淠础U!");? ? ? ? [[UIApplicationsharedApplication]? openURL:URL];? ? }}
從另一個App中調(diào)用自定義 URL Scheme.gif
三策吠、通過自定義 URL Scheme 向應(yīng)用傳遞參數(shù)
第一步:在模擬器safari中輸入:
LionsomApp://?token=123abc®istered=1
第二步:跳轉(zhuǎn)到應(yīng)用中獲取參數(shù):
四逛裤、APP之間跳轉(zhuǎn)的另一個方法 - Universal Links方式