IOS Core Telephony警告和应用商店查询

标签 ios core-telephony

我正在制作一个简单的应用程序,我希望允许用户从该应用程序调用特定的电话。

我们这里有很多特殊数字,其中包括 * 和 # 以获取一些特定数据。我开始编写应用程序并最初使用它来调用电话

NSString * phonenumber = [NSString stringWithFormat:@"%@%@%@",
@"tel://*188*",
number.text,
@"#"];

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

虽然此方法适用于普通数字,但特殊字符会被忽略,因此我冒险寻找解决方案并发现 CoreTelephony Framework 提供了此功能。

我的新方法包括

  • 将核心电话二进制文件添加到项目中
  • 引用标题
  • 使用 CTCallDialWithID(@"*000*0000#",-1);打电话

现在一切正常,这是我的担忧

  • 我收到一条警告,上面写着“CTCallDialwithID 函数的隐式声明在 c99 中无效”。我不知道我是应该忽略这个还是错过了什么?
  • 我一直在研究核心电话,有人说应用商店不会接受带有此功能的应用,这是真的吗?答案似乎是 2 年前的,所以我不知道事情是否发生了变化,我的意思是苹果自己包含了二进制文件,它不像以前那样是一个私有(private)框架,对吗?那么,如果我使用这种方法,该应用是否会被应用商店接受?

谢谢

最佳答案

Core Telephony 框架是一个有效的框架。但是没有名为 CTCallDialWithID 的公共(public)方法或函数。那必须是私有(private) API。 Apple 肯定会拒绝您使用私有(private) API 的应用程序。您只能使用 Apple 记录的核心电话 API。任何其他用途都会导致拒绝(如本例)。

关于IOS Core Telephony警告和应用商店查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17436812/

相关文章:

cocoa-touch - 在 iPhone 上选择号码的最佳用户界面?

ios - 如何使用函数更新文本标签?

iphone - 在 CTCallCenter callEventHandler 中取消隐藏 View 非常慢

iphone - 使用 coretelephony 捕获传入的 Callevent?

iOS - _OBJC_CLASS_$_CTTelephonyNetworkInfo 未找到?

ios - Titanium API 调用 - HTTP 错误

ios - 如何在 iOS 中使用 UIPinchGestureRecognizer 并在模拟器上进行测试

iphone - 退出核心数据迁移?

iphone - 每次通话结束后在 iOS 中调用应用程序

iphone - 如何在 IOS5 上查看通话记录历史记录