我正在尝试使用 Apple SDK 从在 iOS4 上运行的后台应用程序获取各种进程的 CPU 使用率(cpu 滴答声)。这完全是在用户同意的情况下完成的,因此这里没有不道德的地方。
我使用 sysctl 获取进程列表,但进程的 cpu 滴答始终从设备返回为 0。或者,我尝试寻找前台进程并每隔几秒轮询一次以获取应用程序的使用情况。但是,没有指示进程是在前台还是后台运行的 API/标志。我事件检查了进程的内存消耗,并确定它是否在后台运行(如果在后台,内存不会波动)。但是,API proc_pidinfo 是私有的,Apple 拒绝了该应用程序。
我看过一些与此类主题相关的帖子,但没有得到明确的答案。
我知道沙盒不允许获取有关其他应用程序的信息(顺便说一句,这不是真的,因为 sysctl 提供了 PID、进程名称和开始时间)。但是,我在 Zokem 的应用商店中看到了一个名为 MyLife 的应用程序,他们报告了此类信息。它们精确到秒。我想知道是否有存储此信息的系统日志或数据库。
有人对获取应用程序的使用时间有想法吗?