Detecting whether or not device support phone calls?

The iPhone supports the tel:// URI scheme. So you could use:

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

canOpenURL: explicitly checks whether there’s an application capable of opening that URL scheme, not that the URL is correct. So it doesn’t matter that no phone number is specified. The method returns a BOOL, so check that for YES or NO.

That should literally answer whether there’s any application present capable of making a telephone call. So it should be okay against any future changes in device segmentation.

Leave a Comment