package com.android.reverse.apimonitor;
import java.lang.reflect.Method;
import com.android.reverse.hook.HookParam;
import com.android.reverse.util.Logger;
import com.android.reverse.util.RefInvoke;
public class ActivityManagerHook extends ApiMonitorHook {
@Override
public void startHook() {
Method killBackgroundProcessesmethod = RefInvoke.findMethodExact(
"android.app.ActivityManager", ClassLoader.getSystemClassLoader(),
"killBackgroundProcesses", String.class);
hookhelper.hookMethod(killBackgroundProcessesmethod, new AbstractBahaviorHookCallBack() {
@Override
public void descParam(HookParam param) {
// TODO Auto-generated method stub
String packageName = (String) param.args[0];
Logger.log_behavior("kill packagename = "+packageName);
}
});
Method forceStopPackagemethod = RefInvoke.findMethodExact(
"android.app.ActivityManager", ClassLoader.getSystemClassLoader(),
"forceStopPackage", String.class);
hookhelper.hookMethod(forceStopPackagemethod, new AbstractBahaviorHookCallBack() {
@Override
public void descParam(HookParam param) {
// TODO Auto-generated method stub
String packageName = (String) param.args[0];
Logger.log_behavior("kill packagename = "+packageName);
}
});
}
}