我在 my中canOpenURL:没有调用,但此调用返回 true:LSApplicationQueriesSchemesInfo.plist
BOOL canMakePhoneCalls = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel:+123"]];
如果我使用不同的 URL(例如,“https://...”甚至 @“xxxxxxxxtel:+123”),
canOpenURL:则返回 false,如预期的那样。如果我添加
LSApplicationQueriesSchemes到我的Info.plist但有一个空的方案列表,上面的代码仍然返回 true。更糟糕的是,如果我将“https”指定为方案之一,
canOpenURL:带有 https URL 的仍然返回 false。
我的部署目标是 iOS 12(特别是在 iOS 9 之后很久)。
我希望canOpenURL:总是返回 false ,因为LSApplicationQueriesSchemes它丢失了。为什么它(1)在LSApplicationQueriesSchemes丢失时为电话方案返回true,以及(2)当我在中指定“https”时不返回true LSApplicationQueriesSchemes?
(这可能没有任何意义,但是当“Raw Keys & Values”关闭时,Xcode 不会显示可读的文本字符串LSApplicationQueriesSchemes——它仍然显示“LSApplicationQueriesSchemes”。)