Getting Hprof dump for other processes from application code
Posted
by Natarajan
on Stack Overflow
See other posts from Stack Overflow
or by Natarajan
Published on 2010-06-16T12:28:37Z
Indexed on
2010/06/16
12:32 UTC
Read the original article
Hit count: 298
android
Hi,
In my application , i have an option to capture the hprof dump. I used
android.os.Debug.dumpHprofData (String fileName)
Initially i though the hprof data generated by the method above is for the entire device , which is not so . The hprof data generated is only for my process.
Now i am trying to generate hprof data for other process as well. I need to get the Hprof dump for all the running processes from application code.
from adb shell i tried "kill -10 " , This command will generate the hprof file for the corresponding process in the data/misc folder.
Now the problem is this command is working perfectly from the adb shell prompt , but i am not able to embed the command to mycode.
My code is like
Runtime.getRuntime().exec("chmod 777 /data/misc") Runtime.getRunTime().exec("kill -10 ")
No exceptions are thrown , but somehow it is not working. The same code above is capturing Hprof dump for my process, when i give my process ID.
I tried with "android.os.Process.sendSignal (int pid, android.os.Process.SIGNAL_USR1) ;" also.Getting the same problem.It is capturing Hprof dump for my process. For other processes it is not working.
Do we need to have any special permission to kill other process from our process ? Or is it a built issue ? can you please suggest some possible way to get Hprof dump for other processes from application code?
Thanks
© Stack Overflow or respective owner