Slide 1

Slide 1 text

Android App Bundle: from start to deployment Android Worldwide April 2021 Julien Salvi

Slide 2

Slide 2 text

Julien Salvi Android GDE PAUG, Punk and IPAs! Senior Android Engineer @ Aircall @JulienSalvi

Slide 3

Slide 3 text

Table of contents What’s Android App Bundle? Ship small, move fast Moving to Android App Bundle From Gradle build scripts to CI/CD Handling testing with AAB How to manage your testing sessions with AAB

Slide 4

Slide 4 text

What’s Android App Bundle? Ship small, move fast

Slide 5

Slide 5 text

Android App Bundle Optimizing the APK size and deliver what the user only needs are the key features of Android App Bundle. Let’s see what AAB brings to us and for our users πŸš€

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

Android App Bundle What does it bring? ● New publication format introduced by Google β›“ ● Produce a aab file instead of apk 🧰 ● Allow to distribute smaller apk to users πŸ“¦ ● Enable Play Feature and Assets Delivery πŸš€ ● Have a green impact 🌱

Slide 8

Slide 8 text

Android App Bundle Let’s have a look at the APK? Let’s have a look on Android Studio!

Slide 9

Slide 9 text

Android App Bundle What about the .aab? Key advantages: πŸ’₯ Decrease APK size by 21 MB (-59%) for common devices πŸ’₯ Less download time for our users πŸ’₯ We save (a little bit) the planet

Slide 10

Slide 10 text

MAD Score at your service

Slide 11

Slide 11 text

Trusted by many companies

Slide 12

Slide 12 text

Do I need to migrate to AAB right now? Well... ● It’s not mandatory for old apps but it has many benefits! ● If you’re distributing your app outside the Play Store, maybe no ● Yes! And actually you must go for the AAB format... ● From August 2021, ABB will mandatory for new apps in Play Store For the new apps...

Slide 13

Slide 13 text

Moving to Android App Bundle From Gradle build scripts to the CI/CD

Slide 14

Slide 14 text

Journey to App Bundle Update codebase Update CircleCI Deploy on Play Store Play Feature? ✨

Slide 15

Slide 15 text

Android App Bundle Gradle configuration app:bundleRelease Gradle task:

Slide 16

Slide 16 text

CI/CD with CircleCI and fastlane ✍ Installing fastlane is very easy on CircleCI πŸš€ Run the playstore fastlane lane (wait for the next slide :) CircleCI setup:

Slide 17

Slide 17 text

CI/CD with CircleCI and fastlane ✍ Sign the .aab file with your production key πŸš€ Release to the Play Store with fastlane ⚠ Make sure to enable App Signing on the Play Console Fastlane setup:

Slide 18

Slide 18 text

App Bundle on the Play Console

Slide 19

Slide 19 text

Handling testing with App Bundle How to manage testing sessions with AAB

Slide 20

Slide 20 text

Handling testing with App Bundle How to test .aab files? ● You cannot directly test .aab files, neither install them on a device ● Use the test track on the Play Console ● Build .apk files that will be uploaded in App Distribution for example ● Use bundletool for converting .aab file into .apk files Convert .aab to .apk files

Slide 21

Slide 21 text

Handling testing with App Bundle Discovering bundletool

Slide 22

Slide 22 text

Live Demo πŸš€ (Wish me luck…)

Slide 23

Slide 23 text

Android App Bundle ● Reducing APK file size ● Use Play Feature and Assets Delivery ● Have a positive impact ● AAB files cannot be directly installed on devices ● NO direct support for Firebase App Distribution ● You are stuck with the Play Store ● What is the best way to handle testing? ● Use bundletool for deploying on FAD? ● Moving test distribution to Google Play internal test track? The Good The Bad The Questions

Slide 24

Slide 24 text

Aircall Journey to Android App Bundle https://medium.com/inside-aircall/14d0df0d0ea7

Slide 25

Slide 25 text

Have fun with App Bundle! πŸ“¦ Do you have any questions? @JulienSalvi Thanks Julien Salvi