Android文件系统挂钩

问题描述

| 请告知是否可以在Android设备上拦截/监视文件I / O。例如。在库存的Linux上,我们可能使用LSM或syscalls陷阱。 我希望将所有新创建文件文件名记录到文本文件或将SMS记录到另一部手机。 感谢任何帮助以开始使用。先感谢您。 干杯, 法案     

解决方法

您可以使用FileObserver类: \“监视文件(使用intify)以在设备上的任何进程(包括该进程)访问或更改文件后触发事件。FileObserver是抽象类;子类必须实现事件处理程序onEvent(int,String)。 \“ http://developer.android.com/reference/android/os/FileObserver.html     ,鉴于Android内核支持inotify,您可以编译一些使用inotify报告文件系统活动的工具。 或者您可以尝试pyinotify(http://pyinotify.sourceforge.net/)     ,andriod SMS服务由另一个独立的Java程序提供,并且SMS消息可以存储在SQLlite数据库中。 通常是一个恶意软件程序,该程序调用SMS管理器的服务以轮询其中的内容或发送SMS消息。 即使您从内核拦截了所有磁盘io,也几乎不知道哪个程序触发了该磁盘IO到管理器。 从接收到的文件名或数据块中也很难知道IO激活的意图。 如果您想尝试拦截功能以达到目的,则可以尝试在Android中使用ptrace函数。它与标准Linux中的ptrace非常相似,可以拦截从进程发送的每个系统调用请求。