[英]What's the best way for an iOS app to retrieve its URL scheme?
如果您的應用程序具有不同的目標和相應的不同URL方案(例如blackbox://meta
, blackbox-alpha://meta
),您可能會發現自己想要在運行時動態查找當前應用程序的方案。 你怎么能這樣做?
下列情況不工作:
[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleURLSchemes"]
URL方案數組實際存儲在URL類型數組下。 假設您只有一種URL類型,並且第一個列出的方案是您所追求的方案:
Objective-C的
NSArray *urlTypes = [NSBundle.mainBundle objectForInfoDictionaryKey:@"CFBundleURLTypes"];
NSArray *urlSchemes = [urlTypes firstObject][@"CFBundleURLSchemes"];
NSString *urlScheme = [urlSchemes firstObject];
迅速
let urlTypes = NSBundle.mainBundle.object(forInfoDictionaryKey: "CFBundleURLTypes") as! [[String:Any]]
let urlSchemes = urlTypes.first?["CFBundleURLSchemes"]! as! [String]
let urlScheme2 = urlSchemes.first
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.