【问题标题】:How to properly monitor and log Android OS events/activity in the background如何在后台正确监控和记录 Android 操作系统事件/活动
【发布时间】:2013-04-24 20:46:13
【问题描述】:

我想知道在 Android 中监控系统事件和操作系统活动的正确方法。到目前为止,我的研究表明有多种方法可以运行活动、服务、BroadCastReceivers 等,但是对于我想要完成的所有事情,我还没有一个全面的答案。我今天确实遇到了一个名为“Carrier IQ”的应用程序,并且想知道他们是如何做到的。我相信他们的应用程序内置于内核或至少手机的操作系统映像中,我希望尽可能避免这样做。

我知道 Android SDK 提供了多种获取方式 既然我的应用程序不能被暂停,它应该作为前台服务运行吗?如果我这样做,如果我需要轮询各种活动,我会消耗太多资源吗?我问这个是因为我认为我不能通过接收事件(即使用 BroadCastReceiver)来获得所有内容。我想我需要将投票和事件结合起来。

我想记录传感器、事件、操作系统活动等以进行用户研究。这不是为了黑客或网络钓鱼目的!

以下是我认为可能完成与我想要实现的目标类似的前三个项目,但我尚未确定它们是否是可行的解决方案:

android-hci-extractor

cellbots data logger

android-os-monitor

【问题讨论】:

  • “我想知道在 Android 中监控系统事件和操作系统活动的正确方法”——在地球上大约 80 亿人中,零知道“系统事件和操作系统活动”。请提供您希望收集的所有内容的完整且具体列表,因为每个内容可能有不同的方法和 API。
  • 有问题。我应该从一个基本框架开始,该框架将允许未来的“插件”支持应该监控的新事物。我知道这很模糊,这是问题的一部分。但首先我需要监控传感器、操作系统功能(CPU 使用情况、网络使用情况等)和用户活动。
  • @CommonsWare 另一件事:这主要是一个后台进程,将记录到文件中,因此不需要像大多数操作系统监视器那样为最终用户查看的 UI。所有记录的数据都需要保存到一个文件中,以便传输到执行分析的后端服务器。

标签: android events operating-system monitor polling


【解决方案1】:

Android 清单权限列表是否包含您的应用所需的所有权限?

http://developer.android.com/reference/android/Manifest.permission.html

然后,您可以在安装应用程序时请求权限,并且您应该能够访问它们。

【讨论】:

  • 此时我并不关心权限。假设应用程序有权访问所需内容,我需要知道构建整体框架的最佳方法,以便将轮询保持在最低限度并且应用程序在工作时不会暂停。我基本上是在尝试避免创建 Android“反模式”。
猜你喜欢
  • 2012-01-20
  • 1970-01-01
  • 1970-01-01
  • 2016-02-21
  • 1970-01-01
  • 1970-01-01
  • 2011-11-01
  • 2011-05-13
  • 2013-05-21
相关资源
最近更新 更多