Android APK Inspector

Inspect an APK's manifest, permissions and version code in your browser

Ad placeholder (leaderboard)

The Android APK Inspector opens an .apk file in the browser and surfaces the key facts from its manifest: the package name, version, target SDK levels and the permissions the app requests. This is the quickest way to audit an APK before sideloading it, to confirm a build’s version code, or to see exactly what an app is allowed to access — without Android Studio, aapt or apktool.

How it works

An APK is simply a ZIP archive, so the inspector starts by reading the ZIP central directory. It scans backwards from the end of the file for the End Of Central Directory record, then walks each central-directory entry until it finds AndroidManifest.xml. From that entry it locates the compressed data and, if the entry uses DEFLATE, inflates it with the browser’s DecompressionStream("deflate-raw").

The decompressed manifest is in Android’s binary XML (AXML) format. AXML is a sequence of typed chunks: a header, a string pool, and a stream of start-element chunks. The tool first reads the string pool (supporting both UTF-8 and UTF-16 encodings), then walks the start-element chunks. For each element it reads the attribute table, resolving each attribute’s value either from the string pool or from its typed data field (integers, booleans and string references).

From those elements it extracts the package, versionName and versionCode off the <manifest> tag, the minSdkVersion and targetSdkVersion off <uses-sdk>, every <uses-permission> name, and a count of <activity> declarations.

Tips and notes

  • Permissions like INTERNET, ACCESS_FINE_LOCATION and READ_CONTACTS reveal what an app can reach — review them before installing.
  • The version code is the integer Android uses to order updates; the version name is the human label such as 2.1.0.
  • Split APKs and bundles may keep some metadata in separate files; this tool reads the base AndroidManifest.xml.

Everything runs locally in your browser — the APK is never uploaded.

Ad placeholder (rectangle)