以下代码用于确定设备是否支持电话呼叫可靠吗?

[[UIDevice currentDevice].model isEqualToString:@"iPhone"]

推荐答案

iPhone支持tel://URI方案.所以你可以用:

[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel://"]];

canOpenURL:显式判断是否有应用程序能够打开该URL方案,而不是URL是否正确.因此,没有指定电话号码并不重要.该方法返回一个布尔值,因此请判断该值是否为是.

这应该可以回答是否有任何应用程序能够拨打电话.因此,在future 的设备细分变化中,这应该是可以接受的.

Objective-c相关问答推荐

将 NSInteger 转换为 NSIndexpath

目标 C:什么是(id)发件人?

UITableViewCell:如何防止蓝色 Select ​​背景不带 isSelected 属性?

iOS - 如何预加载键盘?

tableView:canEditRowAtIndexPath: 弹出 viewController 时崩溃

如何更改图像中的特定 colored颜色 ?

使用正则表达式搜索 NSString

为什么 UITableViewCell Select 时所有背景都消失了?

为什么我不用 * 声明 NSInteger

将 NSNumber 转换为 NSDecimalNumber

在 UILabel.attributedText *not* 蓝色和 *not* 下划线

在 iPhone 上测量人体胀气( Human-Flatulence)传播波包

如何计算多边形的圆角?

更改后退导航栏按钮的字体

通过索引访问 NSMutableDictionary 中的对象

Objective-c 中 SEL 类型的属性

如何从 UIColor 对象中获取红绿蓝 (RGB) 和 alpha?

iPhone SDK:如何在视图中播放视频?而不是全屏

将浮点数四舍五入到objective C中的下一个整数?

无法加载从设备上运行的包中的 nib 引用的图像