2015-07-10 49 views
0

我无法确定我在做什么错误。我在ipad上使用下面的代码,每次对if语句返回true。相同/相似的代码工作的目标CcanOpenURL似乎并没有在迅速工作

我的代码:

phoneNumber = "5155555555" 
var url:NSURL? = NSURL(string: "tel://" + phoneNumber) 

if (UIApplication.sharedApplication().canOpenURL(url!)) { 
    //do stuff 

目标C(可正常工作)

if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:phoneNumber]]) { 
+0

您是否正在运行iOS 9? – HAS

+0

@HAS不,iOS 8.4 – BluGeni

回答

0

我看到这里有两个问题。

一,您在Objective C版本中创建了一个不正确的NSURL对象,这就是为什么它返回false。

现在,iPad应用程序在询问是否可以打开电话URL时返回true,因为iPad可以并且确实使用FaceTime拨打电话。要测试这个,在你的iPad上禁用FaceTime并且看到这种情况下的答案是否定的。

+0

我禁用了镜头时间并且没有改变。仍然通过if语句 – BluGeni

+0

您是否启用了切换?这也可以用来通过手机拨打电话。 你为什么要打这个系统?如果它告诉你它可以打电话,它可以。如果您需要特定的逻辑才能在iPad上运行,请使用不同的方法来确定。 –

+0

我没有试图对抗系统,问题是我做了检查后,然后调用'UIApplication.sharedApplication()。openURL(url!) '这对ipad没有任何作用 – BluGeni