【已解决】 如何触发想要的FileObserver监听事件
前排@大锯哥
经过上次用c++监听来防内存dump里大锯哥的指点,摸索了一阵,找到了FileObserver这个类,
发现FileObserver封装了之前c的inotify方法,就开始了使用

singleFileObserver = new SingleFileObserver("/proc/"+Process.myPid());
singleFileObserver.startWatching();
下面是log输出
D/myLog: 文件或文件夹被打开==stat
D/myLog: 文件被读取==stat
D/myLog: 打开并关闭了文件夹(未修改)==stat
D/myLog: 文件或文件夹被打开==cmdline
D/myLog: 文件被读取==cmdline
D/myLog: 打开并关闭了文件夹(未修改)==cmdline
发现我想要监听的mem,maps和pagemap(偶然触发过一次)好像无法去触发监听,

我通过adb去cat 查看文件信息或者cp复制出文件,监听都触发不了,不知道是不是我用的是as自带的虚拟机的问题
各位有接触过的朋友,想知道一下,怎么通过adb或者其他方法(ida学习了解中)可以监听到mem,maps,pagemap这几个用来监测内存dump的
希望有接触过的朋友,可以指点一二
这个你自己去看一下源码了:frameworks/base/core/jni/android_util_FileObserver.cpp
我稍微瞄了一眼,更新在这里:
逆回去看是怎么调用过的就好。结合java的代码`frameworks/base/core/java/android/os/FileObserver.java`