12

iOS 7 引入了一个新的用户配置来禁用特定应用的蜂窝数据。它可以在“设置”->“蜂窝”中进行配置,然后向下滚动。

设置截图

您会为每个已安装的应用找到一个开关,并且可以查看它消耗了多少蜂窝数据。

如何以编程方式测试我的应用是否打开了开关?有那个API吗?我可以确定我的应用通过蜂窝网络使用了多少数据吗?

我不是要获取所有应用程序的值。我只对我的应用程序使用感兴趣。

4

2 回答 2

4

没有 API 可以检测您的下载消耗或手机是否对您的应用程序处于活动状态。

如果您的应用尝试连接到网站,但蜂窝网络已关闭,则 iOS 可能会要求用户重新打开蜂窝网络。我不确定它是如何工作的,但它可能类似于 iOS 6“无网络连接”警报,如果没有连接但应用程序尝试访问互联网,则会弹出该警报。

您可以检查当前的互联网连接是通过 WiFi 还是蜂窝网络,但如果蜂窝网络被禁用,您只会被告知没有网络连接。

更多细节在这里:iOS Detect 3G or WiFi

于 2013-10-04T00:11:52.833 回答
1

您无法检查蜂窝数据开关是否已打开。

  • kSCNetworkReachabilityFlagsIsWWAN最接近的是,您可以使用 SCNetworkReachability标志检查是否可以通过蜂窝连接访问特定主机。
  • allowsCellularAccess此外,您可以使用 NSURLRequest属性启用/禁用特定连接的蜂窝数据。

参考:https ://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/Platform-SpecificNetworkingTechnologies/Platform-SpecificNetworkingTechnologies.html

这个答案表明如何在系统范围内测量数据使用情况:iPhone 数据使用跟踪/监控

于 2014-10-14T08:19:25.100 回答