List all activities within an APK from the shell
Asked Answered
A

2

28

Is there a way to list all the activities of a particular .apk file from the shell? I found this post which describes how to list all the activities in an apk but it is not for the shell.

Allo answered 1/7, 2011 at 12:3 Comment(3)
Are you doing this on the device or on the computer?Hollister
I'm using adb shell to connect to an emulator (though being able to adb shell on a device would be nice)Allo
The aapt command can do that. See my post here: #5729403Gasoline
G
51

If you can pull out the apk file to your own machine, you can use the aapt command in the Android SDK

aapt dump xmltree <apk-file> AndroidManifest.xml

The format is a bit perplexing at first, but all the info is there.

Gasoline answered 7/10, 2012 at 7:14 Comment(2)
Probably worth mentioning that the aapt binary can be found under the <sdk_dir>/build-tools/<version>/ directoryLacewing
Seems to have moved to build-tools\<version>\Carillonneur
J
5

The solution from @Albin will print all the elements in AndroidManifest.xml, we need to filter the output. Here is another solution only print activities as the question ask.

aapt list -a /path/to/the/apk | sed -n '/ activity /{:loop n;s/^.*android:name.*="\([^"]\{1,\}\)".*/\1/;T loop;p;t}'
Jenjena answered 1/1, 2018 at 7:20 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.