I currently use this method in a UIDevice category to easily detect device with phone capability. On iOS8 however this does not work any more =(
+(BOOL)hasPhoneCapability;
{
return [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel:+11111"]];
}
I suppose that it is because of the new handoff / continuety features introduced in iOS8. That actually lets you answer or place phone calls on your iPad and even your Mac.
I know that I could revert to detecting if the device is specifically an iPhone and settle for that. But what I would like to accurately test the current device capability.
An iPad that is correctly configured and in proximity to paired iPhone should be detected as a device with phone capability, but not configured / without paired phone it should declare as a device with no phone capability.
On iOS 8, it's better to check if your device is iPad or iPod Touch, because with hands off, all device device return YES (simulator return NO) on this test.
Hope Apple correct this in future.
That's block hands off capabilities but that work.