Pedro Lobito
Pedro Lobito

Reputation: 98981

Metadata on APK files?

Is there any metadata on APK files ?
I know that in images and several other files it exists, but I'm wondering about APK.
If it exists, how can I read it ?
I build my apps on eclipse, does it store any information about the system on the exported APK?

Upvotes: 2

Views: 7237

Answers (1)

Konrad Jamrozik
Konrad Jamrozik

Reputation: 3576

You might try out aapt dump badging and also check out the androidManifest.xml file you can obtain from the apk by decoding it, for example, with apktool.

Example of running aapt dump badging on je.fit.apk:

PS C:\Program Files (x86)\Android\android-sdk\build-tools\17.0.0> aapt dump badging je.fit.apk
package: name='je.fit' versionCode='60' versionName='3.5.0109'
uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission:'android.permission.VIBRATE'
uses-permission:'android.permission.INTERNET'
uses-permission:'android.permission.ACCESS_NETWORK_STATE'
uses-permission:'android.permission.READ_PHONE_STATE'
uses-permission:'android.permission.ACCESS_WIFI_STATE'
uses-configuration:
uses-gl-es:'0xffffffff'
sdkVersion:'7'
targetSdkVersion:'7'
application-label:'JEFIT'
application-icon-120:'res/drawable-ldpi/icon.png'
application-icon-160:'res/drawable/icon.png'
application-icon-240:'res/drawable-hdpi/icon.png'
application-icon-320:'res/drawable-xhdpi/icon.png'
application: label='JEFIT' icon='res/drawable/icon.png'
launchable-activity: name='je.fit.Jefit'  label='JEFIT' icon=''
uses-permission:'android.permission.READ_EXTERNAL_STORAGE'
uses-implied-permission:'android.permission.READ_EXTERNAL_STORAGE','requested WRITE_EXTERNAL_STORAGE'
uses-feature:'android.hardware.wifi'
uses-implied-feature:'android.hardware.wifi','requested android.permission.ACCESS_WIFI_STATE, android.permission.CHANGE_WIFI_STATE, or android.permission.CHANGE
_WIFI_MULTICAST_STATE permission'
uses-feature:'android.hardware.touchscreen'
uses-implied-feature:'android.hardware.touchscreen','assumed you require a touch screen unless explicitly made optional'
uses-feature:'android.hardware.screen.portrait'
uses-implied-feature:'android.hardware.screen.portrait','one or more activities have specified a portrait orientation'
main
other-activities
supports-screens: 'small' 'normal' 'large'
supports-any-density: 'true'
locales: '--_--'
densities: '120' '160' '240' '320'

Upvotes: 2

Related Questions