AAB vs APK — what's the difference?
AAB (Android App Bundle) is a publishing format you upload to Google Play; APK (Android Package) is the installable format that actually runs on a device. Google Play takes your .aab and generates optimized .apk files per device. For direct testing outside Play you share an .apk, because a device can install an APK directly but cannot install an AAB.
The key difference
| AAB (App Bundle) | APK (Android Package) | |
|---|---|---|
| Purpose | Publishing format for Google Play | Installable format for devices |
| Installs on a device directly? | No | Yes |
| Who uses it | Google Play (generates APKs from it) | Testers, sideloading, direct sharing |
| Size on device | Smaller (per-device optimized) | Universal APK is larger |
Why you still share APKs with testers
Because a phone can't install an AAB. When you want a tester to try a build without going through Google Play, you export a universal APK and share it — for example via a link on ipalinked.com. The tester installs it directly after allowing unknown app installs.
How to get an APK from an AAB
Use Google's bundletool (bundletool build-apks --mode=universal) or, in Android Studio, Build → Build APK(s). That gives you a shareable .apk.
And on iOS?
iOS has no AAB equivalent — the distributable format is the IPA. See IPA vs APK for the cross-platform comparison.