APK vs AAB: What Is an Android App Bundle and Which One Do You Analyze?

APK vs AAB: What Is an Android App Bundle and Which One Do You Analyze?

An APK is the file that installs an app on an Android phone. An AAB, or Android App Bundle, is the format developers upload to Google Play, which then builds optimized APKs for each device. You install APKs; you cannot install an AAB directly.

Key takeaways
  • APK = the installable package on a device. AAB = the publishing format a developer uploads to Google Play.
  • Google Play uses a bundle to generate and serve optimized APKs for each device configuration, so each user downloads only what their device needs.[1]
  • That is why one app can be installed as several "split" APKs on your phone.
  • To inspect an app yourself, analyze an APK. bundletool can turn a bundle into APKs if you have the bundle.[2]

What an APK is

An APK (Android Package) is a ZIP archive that contains an app's compiled code, resources, native libraries, manifest and signature. Opening one on a phone installs the app, which is how sideloading works. Our guide to analyzing an APK lists what is inside.

What an AAB is

An Android App Bundle is a publishing format. A developer builds one bundle containing all the code and resources for every device type and uploads it to Google Play, which defers APK generation and signing to Play.[1] Google Play then uses the bundle to generate and serve optimized APKs for each device configuration, so only the code and resources needed for a specific device are downloaded.[1]

For most apps, Android's FAQ says building a bundle is about the same effort as building an APK, since it mostly means choosing the bundle format at build time.[3]

APK and AAB side by side

APKAAB (App Bundle)
PurposeInstall an app on a devicePublish an app to a store
Installable directly?YesNo
ContainsOne device's worth of code and resourcesEverything, for all device configurations
Who creates the final device APKThe developer, or the build toolGoogle Play, per device
What you can analyzeYes, with App Checker and the tools in our guideConvert it first

Why apps are often several APKs

Because Play builds device-specific APKs from a bundle, an installed app is often a base APK plus extra split APKs for your screen density, CPU architecture or language. The base APK holds the manifest and main code, so that is the file to analyze first. When you copy an app off a device with ADB, list every file the package manager reports and pull each one.

Who signs what

With a bundle, the developer signs the upload with an upload key, and Google Play signs the final APKs delivered to users with the app signing key.[4] That is why the certificate on a Play-installed APK belongs to Google Play's signing arrangement rather than the developer's upload key. Our guide to how Android app signing works explains how to read it.

Which one should you analyze?

App Checker's analyzer accepts .apk files only.

Frequently asked questions

What is the difference between an APK and an AAB?

An APK is the installable package that runs on a device. An AAB is the publishing format a developer uploads to Google Play, which uses it to generate optimized APKs for each device.

Can I install an AAB file on my phone?

Not directly. An app bundle is a publishing format. You can use bundletool to convert it into APKs and then install those, or let Google Play do that for you.

Why does Google Play use app bundles?

So users download only the code and resources their device needs, which makes downloads smaller, and so developers do not have to build and manage multiple APKs themselves.

What is a split APK?

A split APK is one of several APK files that together make up an installed app: a base APK plus extra splits for things like screen density, CPU architecture or language.

Which file contains the manifest?

The base APK contains the AndroidManifest.xml. Split APKs carry resources and libraries for specific device configurations.

Is an APK from outside Google Play the same as the Play version?

Not necessarily. Play serves device-specific APKs signed under Play's signing arrangement, while a file from another source may be a different build or a repackaged one. Compare signing certificates to be sure.

Can App Checker analyze an AAB?

No. The analyzer expects an APK. If you only have a bundle, convert it to APKs with bundletool first, or analyze the APK installed on a device.

What is bundletool?

bundletool is the tool that Android Studio, the Android Gradle plugin and Google Play use to build app bundles. It can also convert a bundle into the APKs deployed to devices.

Do AABs change how secure an app is?

The format itself does not decide security, but the signing arrangement matters: with Play App Signing, Google holds the app signing key and the developer keeps an upload key that Google can reset if it is lost.

References
  1. About Android App Bundles — Android Developers — Play generates and serves optimized APKs per device and handles signing.
  2. bundletool — Android Developers — converting app bundles into APKs.
  3. Android App Bundle FAQ — Android Developers — effort to build a bundle versus an APK.
  4. Use Play App Signing — Play Console Help — upload key versus app signing key.

Analyze an APK →

App Checker FAQ

What is Paxio App Checker?

App Checker is a free tool that shows what an Android app declares before you install it. Search any app to see its Google Play permissions, ads, age rating and privacy policy, or upload an APK to see its manifest: permissions, exported components, deep links and certificate pinning.

Is App Checker free, and do I need an account?

Yes, it is free and there is no signup or account. Searches and APK uploads are rate-limited so the service stays available for everyone.

Where does the data come from?

Play Store results are fetched live from the app's current Google Play listing, not from a curated database, so they reflect what the developer has published right now. APK results are parsed directly from the file you upload.

Is my uploaded APK stored or shared?

No. An uploaded APK is analyzed for that single request and deleted immediately afterward. It is not stored, shared or kept for later.

Does App Checker scan my child's phone?

No. It never touches a device. It reads an app's public Play Store listing or a file you choose to upload, and nothing is installed or run.

Does a result mean an app is safe or unsafe?

No. App Checker reports what an app declares: the permissions it can request, whether it shows ads, its age rating. That is useful evidence, but it is not a review, an endorsement or a safety guarantee, and a permission shows what an app can ask for, not what it does with it.

How is App Checker different from the Paxio app?

App Checker is a standalone lookup tool and does not require the Paxio app. Paxio is a separate parental control app for Android that sets screen time limits, blocks apps and filters content on a child's own device.

Who builds App Checker, and how do I report a problem?

It is built by the team behind Paxio. Write to support@paxio.in with anything that looks wrong and, if you can, the app name or package ID.

See all questions, including APK analysis →