I want to capture a screen shot of Android applications that are running on my phone.
I tried using the ScreenShot UX application. This can be done on an unrooted phone
The only way to take a screenshot of an app that is not your own is by getting the raw framebuffer. The framebuffer is usually located at /dev/fb0
or /dev/graphics/fb0
. On some devices (like an LG Optimus One) this can be accessed without root privileges, but on the majority (like a Nexus S) of them you need to be rooted for this. This is usually not allowed for security reasons, as a malicious app could take screenshots in the background and send them to a remote server, revealing information like email IDs and passwords, and in some cases bank account details.