如何测试iOS设备是否具有电话功能?

21
我希望在我的应用程序中,通过点击按钮为iPhone用户提供电话支持,并为iPad / iPod Touch用户显示电话号码。不想检测用户的设备类型,是否有更好的方法查询硬件以查看其是否具有电话功能?这将继续工作,即使将来iPad 3G开放语音通话功能也是如此。
我知道如何通过UIRequiredDeviceCapabilities键限制应用程序对设备的使用,但我不想限制平台,只是想检测能力。
1个回答

65

检查应用程序是否能够打开 'tel' 类型的 URL:

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel:+11111"]])
  // device has phone capabilities

谢谢 - 这看起来正是我要找的(稍作修改为[NSURL URLWithString:@"tel:+11111"])。目前我只在iPhone上进行了测试,但模拟器报告无法拨打电话,而真实设备则声称可以!非常感谢两位回答者! - Purpletoucan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接