Architecture for App Bundles
summary
A team breaks a monolithic Android app into feature modules (onboarding, markets, dealing, payments) and cuts incremental build time from about 1.5 minutes to 15 seconds incremental builds. Implementation uses explicit Navigator interfaces injected via Dagger (app module implements navigation), UI composition via decorator-command objects, and Dagger component dependencies (not subcomponents) to wire dynamic modules. For on-demand delivery it relies on the Play Core dynamic install flow and app signing; fallback uses reflection/class.forName when no activity/fragment entry exists.
AI-written summary · about
chapters (13)
- 0:00Introduction
- 4:25New Structure
- 5:50Future Modules
- 7:03Navigation
- 9:50decorators
- 12:27Bundles
- 13:20Recap
- 18:02Why Bundles
- 18:37Modular Approach
- 22:35Refactoring
- 25:26Activity
- 27:20Dependencies
- 30:56Dynamic Features
related talks
45mArchitecture for AppBundles
32mBuild a modular Android app architecture
30mDynamic App Modules: Building For the Next Billion
39mScaling an Android App from 1 to 100 developers with modularization.
29mForging the Dagger for the modern Android world
34mIntro to App Modularization
20mBundling an app in an instant
43mModularization for dynamic delivery
