How to detect running app using ADB command [duplicate] How to detect running app using ADB command [duplicate] android android

How to detect running app using ADB command [duplicate]


No need to use grep. ps in Android can filter by COMM value (last 15 characters of the package name in case of java app)

Let's say we want to check if com.android.phone is running:

adb shell ps m.android.phoneUSER     PID   PPID  VSIZE  RSS     WCHAN    PC         NAMEradio     1389  277   515960 33964 ffffffff 4024c270 S com.android.phone

Filtering by COMM value option has been removed from ps in Android 7.0. To check for a running process by name in Android 7.0 you can use pidof command:

adb shell pidof com.android.phone

It returns the PID if such process was found or an empty string otherwise.


You can use

adb shell ps | grep apps | awk '{print $9}'

to produce an output like:

com.google.process.gappscom.google.android.apps.uploadercom.google.android.apps.pluscom.google.android.apps.mapscom.google.android.apps.maps:GoogleLocationServicecom.google.android.apps.maps:FriendServicecom.google.android.apps.maps:LocationFriendService

adb shell ps returns a list of all running processes on the android device, grep apps searches for any row with contains "apps", as you can see above they are all com.google.android.APPS. or GAPPS, awk extracts the 9th column which in this case is the package name.

To search for a particular package use

adb shell ps | grep PACKAGE.NAME.HERE | awk '{print $9}'

i.e adb shell ps | grep com.we7.player | awk '{print $9}'

If it is running the name will appear, if not there will be no result returned.


If you want to directly get the package name of the current app in focus, use this adb command -

adb shell dumpsys window windows | grep -E 'mFocusedApp'| cut -d / -f 1 | cut -d " " -f 7

Extra info from the result of the adb command is removed using the cut command. Original solution from here.