Take the 2-minute tour ×
Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. It's 100% free, no registration required.

I want to read the requested permissions of an .apk file on the computer (android sdk is installed) via command line.

I.E.:

$ android read-permissions /path/to/someapp.apk

I know this is possible, I just cant find the proper command.

share|improve this question
add comment

2 Answers

up vote 6 down vote accepted

If I'm interpreting "on the computer" correctly to mean "I want to use the command line on my computer to read an .apk file's permissions" then you can do that with aapt on a local file like so:

C:\>aapt d permissions "MyApp.apk"
package: com.app.myapp
uses-permission: android.permission.ACCESS_NETWORK_STATE
uses-permission: android.permission.INTERNET

If you mean that the .apk is on the device, then I'm not aware of a way to do this aside from pulling it and running aapt as above. pm has a list permissions command but it just lists all available permissions on the device and does not accept a package as a parameter (as far as I know, anyway).

share|improve this answer
add comment

On the device it will probably be easier to look for the relevant section in

/data/system/packages.xml

(which can be read, even though its directory cannot be browsed or listed) as this is a text file, while the AndroidManifest.xml in an apk is in a compressed format.

There is code around on the net for interpreting the compressed manifests on the device, but that's a bit more complicated.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.