0

这是打开拨号器进行呼叫或发送消息的唯一方法吗?

 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel:+%@",phoneNumber]]];

如果是。那么这个支持会从 ios3 到 ios6(beta)。

如果不。那么任何人都可以提供一些示例代码。(如果有任何私有api可以做到这一点,请提及)

如果有单独的功能可用于发送短信和拨打电话,请也告诉我。

在带有 ios 4.2.6 的 ipad 1 中,以下代码不起作用 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"sms:9190432097420"]]]; 并且 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel:9190432097420"]]]

wr 问题出在哪里

4

1 回答 1

2

根据UIApplication's Class Reference,该openUrl:方法在 iOS 2.0 及更高版本中可用。因此,您应该安全地使用该方法。

关于您的示例,如果您首先检查是否有可以处理提供的 url 的应用程序,它会“更安全”。例如:

NSURL *url = [NSURL URLWithString:@"tel:9190432097420"];

if([[UIApplication sharedApplication] canOpenURL:url]) {
    [[UIApplication sharedApplication] openURL:url];
}
else {
    NSLog(@"No application for url '%@'", url);
}

您是在实际设备上还是在模拟器中进行测试?据我所知,模拟器不支持这一点。

于 2012-08-27T11:19:09.957 回答