来自任何应用程序的数据使

Jak*_*kub 10 objective-c ios

我想了解每个应用程序使用的3G数据量.在iOS 5.x中这是可能的吗?在iOS 4.x中?我的目标是例如:

  • 地图从您的数据计划中消耗了3 MB
  • 邮件从您的数据计划中消耗了420 kB

等等,这可能吗?

编辑:我刚刚发现应用程序这样做:Data Man Pro

在此输入图像描述

编辑2:我正在开始赏金.额外的要点是明确的答案.我知道它是可能的(来自Data Man Pro的屏幕),我确信解决方案是有限的.但是解决方案是什么以及如何实现这一点.

Gre*_*nds 8

这些只是提示而不是解决方案.我多次考虑过这个问题,但从未真正开始实施这一切.

  1. 首先,您可以计算查询网络接口的传输字节,看看这个代码的答案和iOS上的网络接口的一个很好的解释;

  2. 使用sysctl或类似的系统函数来检测当前正在运行的应用程序(并且为了运行我的意思是将进程状态设置为RUNNING,就像在OSX上的pstop命令一样.从未尝试过我只是假设这在iOS上是可行的,希望应用程序作为非特权用户运行没有问题)因此您可以推断出正在运行的应用程序并保存这些应用程序的流量统计信息.显然,考虑到在后台运行应用程序的可能性,很难确定哪个应用程序正在传输数据.
    它也有可能在OSX Lion上检索有关每个进程/应用程序的网络活动的信息,例如nettop,不幸的是nettop使用私有框架NetworkStatistics.framework,因此你无法挖掘它的实现;

  3. 考虑到时间;

我的2美分