0

我在 my中canOpenURL:没有调用,但此调用返回 true:LSApplicationQueriesSchemesInfo.plist

BOOL canMakePhoneCalls = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel:+123"]];

  1. 如果我使用不同的 URL(例如,“https://...”甚至 @“xxxxxxxxtel:+123”),canOpenURL:则返回 false,如预期的那样。

  2. 如果我添加LSApplicationQueriesSchemes到我的Info.plist但有一个空的方案列表,上面的代码仍然返回 true。

  3. 更糟糕的是,如果我将“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”。)

4

0 回答 0