以编程方式在iPhone上拨打紧急电话

时间:2012-05-13 16:53:50

标签: ios iphone objective-c

我想制作一个按钮,用户可以通过该按钮拨打紧急服务。

似乎没有任何特定的方法来调用这个,所以我想我必须使用

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:phoneNumber]];

并自行分配phoneNumber。然而,虽然我知道这是美国的911,英格兰的999等,但我不确定如何确定用户所在的国家/地区 - 我可以检索他们的语言环境,但是如果他们手动设置他们的语言环境或者在国外旅行,它不可靠。我可以解决他们的位置问题,但如果他们关闭GPS或没有互联网连接,它将无法正常工作。

我听说112现在已成为GSM手机的通用标准 - 它适用于所有iPhone吗?

2 个答案:

答案 0 :(得分:8)

我不确定如何获取不同的数字,但假设您有一组这些(让我们说一个国家的字典),那么您可以使用网络信息来决定手机当前所在的国家/地区

您可以使用CoreTelephony框架,特别是CTTelephonyNetworkInfoCTCarrier类来实现。这是一个小样本,将获得当前运营商的ISO 3166-1国家/地区代码。

CTTelephonyNetworkInfo *network = [[[CTTelephonyNetworkInfo alloc] init] autorelease];
CTCarrier *carrier = [network subscriberCellularProvider];
NSString *countryCode = [carrier isoCountryCode];

现在countryCode将拥有代码(据我所知,Alpha-2代码),这对于每个国家/地区都是唯一的here's a list of these

答案 1 :(得分:0)

  

似乎没有任何特定的方法来调用这样做,所以我   我想我必须使用

     

[[UIApplication sharedApplication] openURL:[NSURL   URLWithString:phoneNumber的]];

这是正确的。

关于要拨打的号码,我认为没有全球紧急号码。