iphone - 确定设备是否可以同时调用和传输数据

标签 iphone objective-c ios cdma

我的 iPhone 应用程序需要调用电话号码并将一些数据发送到远程服务器。

重要的是我:

  1. 触发调用,然后
  2. 设置将与我的服务器通信的后台任务

我一直在使用 AT&T 电话进行开发/测试,在发起电话调用时在后台发送数据没有问题。

但是,Verizon 客户无法调用和传输数据,因此对于他们,我想颠倒我的操作顺序。

确定我需要走哪条路线的最佳方法是什么?我看过查看 iPhone 型号的示例,如果它是 3.3,则意味着它是 Verizon,因此我可以从那里继续,但这似乎并不可靠或不会过时。 Verizon 是目前唯一有此限制的运营商吗?似乎应该有某种属性,例如 -[UIDevice isMultiTaskingSupported]

最佳答案

没有像您提到的 UIDevice 方法那样出色的单行代码,但是有 Core Telephony框架。我自己没用过,但你好像可以用 CTCarrier类来找出这个,特别是 mobileNetworkCode属性(property)。 This list应该让你开始。从外观上看,对于某些运营商,您可以使用此代码来确定您是否在 EDGE 上。对于 CDMA 或 EDGE 网络,对于同时流式传输语音和数据,答案将是“否”,但对于不是 EDGE 的 GSM 网络,你很好。您也可以只使用 carrierName属性并查找“AT&T”,但这不包括 EDGE。

好的解决方案吗?可能不是。

关于iphone - 确定设备是否可以同时调用和传输数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8305224/

相关文章:

iphone - 理解 Objective c 枚举声明

iphone - 发送到实例的无法识别的选择器

objective-c - 正态分布函数

objective-c - Cocoa 设置终端退出代码变量

ios - Swift 中的进度条 WebView

iphone - 如何在iOS中实现 "Touch status bar to scroll to top"?

ios - 是否可以在没有开发人员程序的情况下在 iOS 7.1.2 和 Xcode 版本为 6.1.1 上测试我的 iPhone 应用程序

ios - 如何在不影响其他对象的情况下在数组中添加新对象 iOS

objective-c - iPhone SDK如何从照片库中获取完整的图像?

ios - 自定义UITableView节不会增加高度