我使用了UITextView并设置了dataDetectorTypes来检测电话号码。问题是,当我点击手机链接时,系统会提示我使用常规手机应用程序拨打电话。我想提示设备中的每个选项(例如,Skype,Viber,允许拨打电话的任何应用程序)。如果你能帮助我,我将非常感谢你的回答。
答案 0 :(得分:0)
通过默认手机应用
拨打电话NSString *phoneNumber = [@"telprompt://" stringByAppendingString:phoneNoStr];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:phoneNumber]];
要通过 Skype 拨打电话,您可以使用skype docs
中的代码BOOL installed = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"skype:"]];
if(installed)
{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"skype:echo123?call"]];
}
else
{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://itunes.com/apps/skype/skype"]];
}
要通过 facetime 拨打电话,您可以使用类似的网址方案
NSURL *url = [NSURL URLWithString:@"facetime://+123456789"];
[[UIApplication sharedApplication] openURL:url];
Viber 目前不支持网址方案。希望这会有所帮助。