droidCon Berlin 2019
2019-07-01..2019-07-03
Berlin, Germany
[droidcon Berlin 2015, droidcon Berlin 2016, droidcon Berlin 2018, droidCon Berlin 2019, droidcon Berlin 2021, droidcon Berlin 2022, droidcon Berlin 2023, droidcon Berlin 2024, droidcon Berlin 2025]
| title | author | length |
|---|---|---|
| I have no idea what my app is doing ¯\_(ツ)_/¯ - Protecting your application from unintended side eff | Nicola Corti | 31m |
Practical checklist for preventing unintended app behavior: inspect real HTTP traffic with Charles proxy or on-device Chucker; review the merged Android… | ||
| Navigation in Modular Applications with Deep Linking | Damian Burke | 16m |
Deep linking is presented as the pragmatic way to decouple navigation in heavily modular or dynamic feature modules apps, avoiding compile‑time dependencies… | ||
| A day in the life of a mobile reverse engineer | Oliver Tuchon | 29m |
Shows how Google gets APKs from Play, OEM system images and alternative stores, scans 500k apps/day with ML then escalates ambiguous cases to manual reverse… | ||
| Building an Assurance and Secure Development Program | Sean Smith | 38m |
Covers how Android builds an assurance program by combining an SDL, threat modeling with STRIDE, and concrete tooling: Haiku fuzzing on ~200 devices for native… | ||
| Tackling Android Development at Scale | Fábio Carballo | 37m |
Android team grows from four to twenty-seven engineers in a year and a half and hits 500% growth, forcing changes to architecture, workflow and tooling… | ||
| Adapting Your Apps for Android Q Privacy Requirements | Nicole Borrelli | 19m |
Android Q makes concrete changes: location gains an only-while-in-use permission and foreground services must declare a foreground-service metadata flag to… | ||
| Dealing with multiple languages and currencies in the context of subscriptions | Neto Marin | 35m |
Step-by-step checklist for selling subscriptions internationally: prepare strings XML, RTL layouts, localized number/date formats and smaller APKs (aim ~10 MB… | ||
| Why we failed at modularizing our app. An honest retrospective. | Marcos Holgado | 39m |
Sky attempts to modularize a multi-flavor Android app and fails first because the team uses flavors to share code, picks the wrong first modules (streaming is… | ||
| Make your app smarter | Francessco Romano | 29m |
On-device AI uses Huawei’s HiAI stack: HiAI Foundation compiles models (TensorFlow/Caffe2/PaddlePaddle/CoreML) into an offline NPU format supporting 140+… | ||
| Libraries for K/N citizens | Enrique López Mañas | 38m |
Current state of Kotlin/Native libraries: JetBrains and Touchlab provide the core ecosystem while community projects supply SQLDelight, Ktor (client)… | ||
| Incorporating Material Theming into Custom Views | Nick Rout | 33m |
Custom ColorPickerView is refactored to follow Material Theming by replacing hard-coded draws and widgets with MDC-Android primitives, using MaterialButton and… | ||
| Building SDKs - The Kotlin Way | Jossi Wolf | 22m |
Explains concrete Kotlin tactics for stable SDKs: use @Experimental and @UseExperimental to surface risky APIs, annotate and supply @Deprecated(… | ||
| Tracking Regressions and Improving UI Performance using Benchmarking Approach | Aziz Murtazaev | 37m |
Benchmarks measure actual UI costs (create/bind/layout or Litho lifecycle: create/layout/mount) and catch regressions that tests miss: a newsfeed header moves… | ||
| Customer Driven Development : What, Why & How? | Isha Khanna | 27m |
Presents concrete A/B testing practice: a fill‑in hypothesis template, choosing net rentals per day as a primary metric, and using stages / first‑pixel… | ||
| Flowing in the Deep | Hannes Dorfmann, Gabriel Ittner | 39m |
Shows how Kotlin Flow (built on Coroutines) implements streams: uses flow builder with suspendable collect/emit pair, reimplements map (example multiplies five… | ||
| Write awesome tests | Jeroen Mols | 40m |
Three concrete rules: tests run under one second (plain JVM not emulator, avoid network DB sleeps), tests stay fast, focused, reliable (one assertion per… | ||
| Deep diving into the Kotlin Coroutines API | Filip Babić | 40m |
Covers the Kotlin Coroutines API and its internals with concrete examples: shows how launch/async builders create coroutines, how a Job and Dispatchers entry… | ||
| Grox: a library to manage the state of Java / Android apps | Alin Turcu | 29m |
Grox is an open source Java/Kotlin library that provides a unidirectional state machine with a Store that atomically replaces immutable states, serializes… | ||
| MVI made for Android | Akshay Chordiya | 18m |
Combines MVI state pipeline with Android architecture components so the UI uses ViewModel + LiveData while keeping RxJava (or coroutines/Flow) confined to… | ||
| Build apps for Billions | Sourabh Gupta | 41m |
Moves heavy splash art to the launcher icon and migrated SDKs to background to unblock the main thread, cutting launch time by ~53% and saving 200–500 ms from… | ||
| Android and the WebView | Erik Hellman | 39m |
Recommends using Chrome Custom Tabs (AndroidX Browser) for remote HTTPS links, with service warm up to preload pages; enables setWebContentsDebuggingEnabled… | ||
| Let your design evolve, adopt a Design System! | Jean-Baptiste Vincey | 20m |
Deezer builds a reusable Design System implemented as an Android library called a UI Kit that follows Atomic Design via a Lego metaphor, with an interactive… | ||
| Think of the next billion users: Building for Low End devices | Frank Tamre | 35m |
Half the next billion come online on $25–$80 phones with 512 MB–1 GB RAM and tiny storage, often on 2G/edge connectivity or dual‑SIM setups; users share media… | ||
| Step Up your tooling | Pascal Welsch | 19m |
A practical lineup of ten concrete replacements: use Discord instead of Slack for free unlimited history plus voice and group video channels; prefer IntelliJ… | ||
| Nitrogen in your (test) pyramid. | Enrico Bruno Del Zotto | 26m |
Shows a concrete way to run the same Espresso UI tests on the JVM and in CI by adding the instrumentation test sources to the unit-test source set and using… | ||