【问题标题】:iOS Cellular Data Usage TrackingiOS 蜂窝数据使用跟踪
【发布时间】:2015-08-11 16:55:47
【问题描述】:

我想跟踪系统蜂窝数据的使用情况。

我找到了some interesting resources。接受的答案中的代码工作正常,我能够读取通过蜂窝网络下载的字节。

但我还发现,当用户重新启动设备时,数据会被重置。因此,当用户打开应用程序时,我可能(例如)读取 200 MB 的数据使用量。应用程序会保存此值。如果用户关闭他们的应用程序,再下载 100 MB,然后重新启动设备,当应用程序再次打开时,计数器将读取 0 MB。最后保存的值为 200 MB。我怎么知道他实际下载了300MB?

【问题讨论】:

  • 我不知道为什么有 2 个人对这个问题投了反对票。可以给点意见吗?

标签: ios persistence cellular-network


【解决方案1】:

您可以在使用应用时跟踪数据使用情况。当您的应用程序未运行时,您无法访问下载信息。出于安全原因,iOS 会阻止它。您可以将 200MB 的值保存到 NSUserDefaults 或其他持久存储中。然后您可以在应用启动时重新加载该数据。

【讨论】:

  • 没错。但是当我重新加载数据时,它读取 0 字节,因为用户同时重新启动了他的设备。问题是如何获取有关 300 MB 的信息。
  • 就像我说的。是不可能的。您唯一能做的就是存储 200MB。您无法访问应用之外的数据使用情况。
  • 好的。我想知道像 DataMan 这样的应用程序是如何做到的。他们不使用 VPN,显然也没有私有 API。必须有距离才能获取数据..
  • 好的,我刚刚找到了这个帖子:stackoverflow.com/questions/10828762/… 我想这就是我需要知道的。他们如何执行后台任务。
  • 您可以在此处阅读有关后台线程的更多信息:raywenderlich.com/29948/backgrounding-for-ios,尽管正如链接中所说,他们的应用因尝试做类似的事情而被删除/拒绝。
猜你喜欢
  • 2011-09-30
  • 2014-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多