Making an Existing App Adaptive: The JetStream Case / Extending Application Adaptability:…
summary
JetStream was converted into a single Compose APK that runs on phone, tablet, foldable, Chromebook, TV, car and XR by replacing TV-specific Material with mobile Material3, rebuilding a few TV cards, and adding visual focus effects using an IndicationNodeFactory modifier. Playback state was moved to Media3 for background restoration so video position survives rotations; the work took about three months with ~1.5 engineers in five phases, using simple ViewModel state for most configuration changes and adaptive layouts that change navigation chrome by input device and window size.
AI-written summary · about
chapters (10)
- 0:00Adaptive applications
- 3:293 adaptive development points
- 7:04Why adaptive is needed
- 14:45Upquality guidelines
- 19:43JetStream adaptation
- 21:545-phase refactor process
- 25:43Material library migration
- 29:59Stateless restoration
- 34:18Adaptive layout design
- 39:35Summary and next steps
related talks
29mAdapting Android Apps for Multiple Screens Compose-First Approach
26mMaking Apps adaptive with Material and Compose
33mBuild adaptive apps with Jetpack Compose
28mBuilding an app for the Multi-Device world
41mDeep Dive into New Jetpack Compose APIs: FlexBox, Grid, Styles, Adaptive UI with mediaQuery
14mImplementing Android apps for all screen sizes
31mDesigning Media Friendly Jetpack Compose Components
34mBuild for the wrist, the road, and the remote with Jetpack Compose and Gemini
