Android Makers 2020
2020-04-20..2020-04-21
-- online --
[Android Makers 2017, Android Makers 2018, Android Makers 2019, Android Makers 2020, Android Makers 2022, AndroidMakers by droidcon 2024, AndroidMakers by droidcon 2025, AndroidMakers by droidcon 2026]
as the organisers put it
All the videos from Android Makers 2020! Thanks again to our speakers and sponsors who made this event possible despite the corona virus outbreak. You rock 🤘!
who it's for
Android developers, Kotlin developers, mobile engineering managers, build and release engineers, UI engineers, developer productivity engineers, tooling and compiler contributors
topics
Jetpack Compose migration; Kotlin compiler extensions; Gradle build optimisation; Android App Bundle formats; ConstraintLayout techniques; MotionLayout animations; R8 shrinking and obfuscation; low-latency Android audio; App Actions and Slices; dynamic features and instant apps; GraphQL with Apollo Android
| title | author | length |
|---|---|---|
| Story of a full-remote culture | Clément Garcia | 44m |
Heetch is a mostly remote-first company of nearly 300 people with about 75 engineers working remote by default and hiring largely inside European time zones… | ||
| Android Everywhere! | Geoffrey Métais | 44m |
VLC demonstrates a single Android codebase running on mobile, TV, Android Auto, Chromebooks, casting, desktop mode and foldables by reusing Android media… | ||
| Introduction to Sketchnoting | Pierre Tibulle | 39m |
Sketchnoting is presented as a method that combines drawing and writing to improve attention and memory and to encourage sharing on Twitter. The talk… | ||
| Mathematics for Developers | Kai Koenig | 48m |
Clear, actionable examples and concrete resources determine whether to watch: a worked rotation matrix with sine and cosine multiplies vector [5,6] to get… | ||
| Annotation processing for Kotlin done right | Csaba Kozák | 39m |
This session was given at Paris Android Makers 2020 by Csaba Kozák, Supercharge.
More info: https://android-makers-2020.firebaseapp.com/schedule/?sessionId=175… | ||
| Why derive a Password | Xiaoyi Li | 30m |
Claims that using derived keys prevents rainbow‑table and GPU brute‑force attacks, shows concrete Android options: PBKDF2 (SecretKeyFactory, API levels noted)… | ||
| Flutter: A Path of Vines and Flowers | Elaine Dias Batista | 38m |
Flutter ships powerful rendering and cross‑platform UI but lacks Android‑style resource conventions: there is no default locale resource system so third‑party… | ||
| The Secrets of the Build Scan Plugin and the internals of Gradle | Nelson Osacky | 43m |
Build scans and Gradle internals turn into concrete actions: enforce JAVA_HOME to disallow multiple daemons so Android Studio and the CLI share one process… | ||
| Experimenting with the Kotlin Compiler | Jossi Wolf | 44m |
Shows how to set up IntelliJ to build the Kotlin repo, adds a class delegate soft keyword, swaps the order of field and delegate-expression generation so… | ||
| CameraX - the new powerful Jetpack library | Divya jain | 23m |
CameraX presents a use-case API with three main handles and lets apps bind use cases to Lifecycle with just a few lines of code, avoiding device-specific… | ||
| Demystifying the Google Assistant for Android developers | Nicolas Telera | 24m |
Shows concrete recipes: how to declare App Actions in actions.xml, map voice phrases to deep links, and test via the App Actions test tool and a Play Console… | ||
| Take Control Of Your APIs With GraphQL | Adam McNeilly | 54m |
Shows GraphQL replacing REST with concrete steps: adds the apollo android client, fetches an introspection into schema.json, generates Kotlin/Java query… | ||
| Conquering Common Conundrums with ConstraintLayout | Huyen Tue Dao | 48m |
ConstraintLayout gets reduced to an actionable toolbox: use 0dp (match_constraint) instead of match_parent, apply baseline alignment for mixed text, prefer… | ||
| Let's build Android UI with Jetpack Compose | Alex Zhukovich | 01h 05m |
Jetpack Compose is in Developer Preview and is presented as a full rewrite shipped as libraries; the demo builds a master/detail app with a calendar month UI… | ||
| App Clinic | Eyal Lezmy | 01h 37m |
Group runs live reviews of five real apps with concrete outcomes: an actor-ID camera MVP tested via Genymotion cloud shared devices that misroutes front/rear… | ||
| Build Your Own Relaxation Audio App | Vincent Barthélémy | 44m |
A hands‑on workshop that builds a simple Android relaxation app using MediaPlayer to loop background music, SoundPool to play randomized layered “airport‑like”… | ||
| Everything is an API | Ash Davies | 35m |
Argues that every module is an API and gives concrete patterns and outcomes: favors interface-first composition with small granular contracts, uses Kotlin… | ||
| What's my manager doing all day? | Fabien Devos | 27m |
Claim: management is mostly routing information not commanding — calendars end up triple-booked and time fragments into context switches. Activities… | ||
| How to Make Your App Lose Weight | Antoine Danois | 22m |
Describes practical steps to reduce Android app size by converting images to WebP and vectors to optimized SVGs, enabling R8 and running Lint to remove unused… | ||
| Nitrogen in your (test) pyramid. | Enrico Bruno Del Zotto | 51m |
Project Nitrogen promises a single entry point so tests written once can target emulator, device lab and CI, but the implementation is partial: Robolectric 4.0… | ||
| Animation journey: MotionLayout chapter. | Sandra Dupré | 13m |
Disney+ uses MotionLayout across mobile, tablet and TV for a year and reports concrete wins and failures: adoption spans alpha 3 to beta 4, sub‑elements and… | ||
| From 7 to 70 Developers, How to Scale your App Release Process | Thomas Ezanand, Helen Adekoya | 44m |
Lyft grows from 7 to 70 developers and then beyond and standardizes on a weekly release cadence with three branches (alpha, beta, release) to avoid ad hoc… | ||
| Getting the most out of Android KTX | Jeroen Mols | 21m |
Covers concrete Android KTX extensions with code-level detail: shows doOnNextLayout optimization that checks if a View is already laid out, demonstrates… | ||
| Benchmarking your application | Xavier F. Gouchet | 43m |
Android Studio profiler and systrace expose method-level CPU, memory and network timing so it’s possible to pinpoint the slow method; Perfetto provides a nicer… | ||
| Kotlin Reactive Programming Patterns | Etienne Caron | 49m |
Kotlin patterns and concrete code for building reactive client state: coroutines + Flow, a callbackFlow clicks extension that emits Unit, a generic model store… | ||
| How much memory do your objects really use? | Martin Devillers | 35m |
Explains JVM object headers, alignment and reference sizes, and uses a Java instrumentation agent plus reflection to walk object graphs and get exact sizes… | ||
| Everything They Don’t Tell You About Dynamic Features and Instant Apps | Jamie Adkins | 42m |
Modularizes the Cricket World Cup 2019 app to ship the quiz as an instant experience and documents every roadblock: hitting a 4 MB limit (later eased to 15… | ||
| Fueled Reactive apps with Asynchronous Flow | Raul Hernandez Lopez | 49m |
This session was given at Paris Android Makers 2020 by Raul Hernandez Lopez, Twitter.
More info… | ||
| Demystifying Low Latency Audio on Android | Nishant Srivastava | 39m |
Explains why low latency audio needs native paths and shows concrete fixes: use the Oboe C++ library (works API16+, switches between OpenSL ES and AAudio)… | ||
| Handle gestures and touch events for CustomView | Akshay Mukadam | 34m |
A concrete how‑to that builds a working sliding panel with custom shape with canvas and shape morphing tied to drag distance, explains exact touch lifecycle… | ||
| Dekompiling | Márton Braun | 41m |
Kotlin source is compiled to JVM bytecode then decompiled back to Java so concrete surprises appear: the IDE’s Show Kotlin Bytecode panel and a decompiler… | ||
| How to add Flutter to your existing app | Salih Guler | 47m |
Shows how an existing Android or iOS app gets a Flutter module either as a generated AAR or as source alongside the app, using commands like flutter create… | ||
| Taking over someone else's codebase | Florian Mierzejewski | 46m |
Starts by check crash reporting and Play Store reviews then inspects commit history, base activities and module layout to judge risk. It names concrete wins… | ||
| ConstraintLayout: now and next | Nicolas Roard, John Hoford | 39m |
ConstraintLayout 2.0 ships with MotionLayout and a new virtual widget Flow that implements chain and wrap behavior without extra view hierarchy, plus keyframe… | ||
| Android Studio Design Tools | Nicolas Roard, John Hoford | 41m |
Android Studio 4.0 bundles concrete, usable features: a MotionLayout visual editor that creates keyframes arcs and gestures and maps one-to-one to motion scene… | ||
| The Hitchhikers Guide Through Kotlin Multiplatform | Carlos Mota | 46m |
Demo conference app shares network, parsing and storage code via Kotlin Multiplatform and compiles into an iOS framework while Android uses normal modules… | ||
| Finding the view | Hadi Tok | 19m |
Shows how Android wires XML to code with a measured description of findViewById internals, demonstrates how many null checks and casts typical code requires… | ||
| Managing parallelism using coroutines | Fabio Collini | 45m |
Shows concrete patterns: uses Kotlin coroutines to run parallel network and DB work with uses Retrofit and Room, times where parallel launches cut two-second… | ||
| Riding the state flow | Arnaud Giuliani | 49m |
Argues a concrete MVVM recipe: model UI as immutable state and events, dispatch actions as Kotlin suspending functions backed by a coroutine actor and Flow… | ||
| How to effectively scan barcodes on Android | Renaud Mathieu | 25m |
Concrete recipe and results: implements continuous scanner used in a store checkout feature, compares two stacks and shows what actually works. Uses CameraX +… | ||
| Lessons from a Librarian | Zac Sweers | 24m |
A concrete playbook for removing long‑lived tech debt: separate API and implementation modules to avoid rebuilds, use IntelliJ structural replace and custom… | ||
| Developing in the Dark | Daniele Bottillo | 44m |
Deliveroo Rider app adds dark mode by converting the design system and app to Material Components day/night themes, writing custom Lint detectors that find… | ||
| Flowing Things, not so strange in the MVI world | Garima Jain | 40m |
Migrates an Rx MVI implementation to Kotlin coroutines Flow by swapping Singles for suspend Retrofit calls, turning action streams into Flow, and exposing… | ||
| Please Draw Me a Sheep... in AR | Julien Salvi | 45m |
Builds a sheep from cylinders and spheres using ARCore and Sceneform, rendering Android UI as in‑AR panels and animating nodes with object animators and… | ||
| Relaxation & Chill Break | Clémentine Marie | 19m |
A fifteen-minute guided stretching routine leads participants through neck, shoulder, wrist, thorax, hip and calf stretches with breathing cues and simple… | ||
| Pull Requests, Yoga & Avocado Toasts: 7 Years of Engineering at Square — Pierre‑Yves Ricau | Pierre-Yves Ricau | 53m |
An overview of seven years of engineering at Square describing how Square open-sources most internal libraries and maintains hundreds of small repositories… | ||
| Accessibility Made Simple | François Blavoet | 43m |
Android accessibility can be implemented with minutes of work per feature by using Android APIs like AccessibilityService and AccessibilityNodeInfo, setting… | ||
| What Can Blockchain Bring to a Mobile Developer in 2020? | Romain Menetrier | 29m |
Mobile developers will see concrete blockchain uses: user identity via BIP39 mnemonic keys stored hardware-backed in Android Keystore, off-chain data stored on… | ||
| Android App Bundle / Android PacKage: Each Format for Its Task | Pierre Crépieux | 53m |
Presents the shift from distributing a single monolithic APK to using the Android App Bundle so Google Play generates and serves device-specific APKs (still… | ||
| Mobile Trends 2020 - Towards a Five-Star Mobile Experience | Alizée Lambert, Rémi Dormoy | 39m |
Presents 10 concrete mobile UX and implementation practices for Android: replace passwords with biometric auth and Google Sign‑In; use loading animations via… | ||
| Welcome on Board! | Quentin Metzler | 19m |
Provides a concrete onboarding recipe for new Android hires: send personalized pre-arrival newsletters, pre-order hardware and access, create a calendar… | ||
| Get the Most Out of Firebase Remote Config | Benjamin Gonin | 24m |
A practical guide to using Firebase Remote Config: step‑by‑step setup, which parameter types are supported, how defaults interact with fetchAndActivate, and… | ||
| Let’s Be Actors of Sustainable (Mobile) Development | Gabriel Adgeg | 30m |
The talk examines mobile development's climate impact and gives concrete measurement-based actions: quantify network and CPU costs of app updates and releases… | ||
| Use Kotlin DSLs for Your Gradle Scripts | Gerard Paligot | 23m |
Kotlin DSL for Gradle (production-ready since Gradle 5.0) is presented as a way to use Kotlin across builds and scripts. The demo migrates a small three-module… | ||
| Don't Get Lost with the Android Localization Framework | Antoine Gerard | 59m |
Explains how Android obtains latitude/longitude by fusing GNSS, Wi‑Fi, cellular and sensor inputs and names the specific APIs involved: GnssMeasurements and… | ||
| 20 Years in the Field and Still Plenty of Questions | Pierre Benayoun | 52m |
A senior Android engineer shares concrete testing prescriptions from 20 years of experience: allocate about 40% to unit tests and 30% to integration tests, and… | ||
| Compile, Deploy and Manage Your CI in Kotlin | Martin Bonnin, Michel Gauzins | 29m |
Shows using Kotlin as a replacement for shell scripting to run build, test and publish tasks both locally and in CI, demonstrating KScript and Clikt for… | ||
| Integrate Multiple Kotlin/Native Libraries into Your Android/iOS Apps, Vincent Nicolle Coyote System | Vincent Nicolle | 22m |
Vincent Nicolle describes migrating ten years of C++ business logic into Kotlin/Native to share code between Android and iOS. The build pipeline uses Gradle… | ||
| Whats new with Data Storage? | Richard Bogdan | 26m |
Scoped Storage restricts app access to shared files and media and Android 10 already moves writes into MediaStore while Android R (11) adds batch operations… | ||
| Managing Data Restoration with the Architecture Components | Cristian Garrido Le Bon Coin | 36m |
How Le Bon Coin uses AndroidX SavedState for ViewModel inside Architecture Components to make UI state survive process death, demonstrating a fragment that… | ||
| Shrink, Secure & Optimize Your App With R8 | Siddhant Panhalkar | 41m |
R8 replaces ProGuard and folds D8 desugaring into a single pass that both compiles and shrinks, yielding roughly around 20% smaller dex artifacts in many cases… | ||
| Reducing memory footprint of your app - what LeakCanary is not telling you about | Paulina Sadowska | 23m |
LeakCanary flags no leaks yet Firebase still shows frequent OutOfMemoryError reports; investigation finds screens holding 150+ bitmaps retained because Glide… | ||
| nothing matches | ||