~/conference

droidCon Berlin 2019

date:2019-07-01..2019-07-03
location:Berlin, Germany
series:droidcon Berlin · 9 editions
tags:[android]
titleauthorlength
I have no idea what my app is doing ¯\_(ツ)_/¯ - Protecting your application from unintended side effNicola Corti31m
Practical checklist for preventing unintended app behavior: inspect real HTTP traffic with Charles proxy or on-device Chucker; review the merged Android…
Talk in Japanese on
Navigation in Modular Applications with Deep LinkingDamian Burke16m
Deep linking is presented as the pragmatic way to decouple navigation in heavily modular or dynamic feature modules apps, avoiding compile‑time dependencies…
Talk in English on
A day in the life of a mobile reverse engineerOliver Tuchon29m
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…
Talk in English on
Building an Assurance and Secure Development ProgramSean Smith38m
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…
Talk in English on
Tackling Android Development at ScaleFábio Carballo37m
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…
Talk in English on
Adapting Your Apps for Android Q Privacy RequirementsNicole Borrelli19m
Android Q makes concrete changes: location gains an only-while-in-use permission and foreground services must declare a foreground-service metadata flag to…
Talk in English on
Dealing with multiple languages and currencies in the context of subscriptionsNeto Marin35m
Step-by-step checklist for selling subscriptions internationally: prepare strings XML, RTL layouts, localized number/date formats and smaller APKs (aim ~10 MB…
Talk in English on
Why we failed at modularizing our app. An honest retrospective.Marcos Holgado39m
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…
Talk in English on
Make your app smarterFrancessco Romano29m
On-device AI uses Huawei’s HiAI stack: HiAI Foundation compiles models (TensorFlow/Caffe2/PaddlePaddle/CoreML) into an offline NPU format supporting 140+…
Talk in English on
Libraries for K/N citizensEnrique López Mañas38m
Current state of Kotlin/Native libraries: JetBrains and Touchlab provide the core ecosystem while community projects supply SQLDelight, Ktor (client)…
Talk in English on
Incorporating Material Theming into Custom ViewsNick Rout33m
Custom ColorPickerView is refactored to follow Material Theming by replacing hard-coded draws and widgets with MDC-Android primitives, using MaterialButton and…
Talk in English on
Building SDKs - The Kotlin WayJossi Wolf22m
Explains concrete Kotlin tactics for stable SDKs: use @Experimental and @UseExperimental to surface risky APIs, annotate and supply @Deprecated(…
Talk in English on
Tracking Regressions and Improving UI Performance using Benchmarking ApproachAziz Murtazaev37m
Benchmarks measure actual UI costs (create/bind/layout or Litho lifecycle: create/layout/mount) and catch regressions that tests miss: a newsfeed header moves…
Talk in English on
Customer Driven Development : What, Why & How?Isha Khanna27m
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…
Talk in English on
Flowing in the DeepHannes Dorfmann, Gabriel Ittner39m
Shows how Kotlin Flow (built on Coroutines) implements streams: uses flow builder with suspendable collect/emit pair, reimplements map (example multiplies five…
Talk in English on
Write awesome testsJeroen Mols40m
Three concrete rules: tests run under one second (plain JVM not emulator, avoid network DB sleeps), tests stay fast, focused, reliable (one assertion per…
Talk in English on
Deep diving into the Kotlin Coroutines APIFilip 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…
Talk in English on
Grox: a library to manage the state of Java / Android appsAlin Turcu29m
Grox is an open source Java/Kotlin library that provides a unidirectional state machine with a Store that atomically replaces immutable states, serializes…
Talk in English on
MVI made for AndroidAkshay Chordiya18m
Combines MVI state pipeline with Android architecture components so the UI uses ViewModel + LiveData while keeping RxJava (or coroutines/Flow) confined to…
Talk in English on
Build apps for BillionsSourabh Gupta41m
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…
Talk in English on
Android and the WebViewErik Hellman39m
Recommends using Chrome Custom Tabs (AndroidX Browser) for remote HTTPS links, with service warm up to preload pages; enables setWebContentsDebuggingEnabled…
Talk in English on
Let your design evolve, adopt a Design System!Jean-Baptiste Vincey20m
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…
Talk in English on
Think of the next billion users: Building for Low End devicesFrank Tamre35m
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…
Talk in English on
Step Up your toolingPascal Welsch19m
A practical lineup of ten concrete replacements: use Discord instead of Slack for free unlimited history plus voice and group video channels; prefer IntelliJ…
Talk in English on
Nitrogen in your (test) pyramid.Enrico Bruno Del Zotto26m
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…
Talk in English on
Coroutines + Testing = ❤️ Sean McQuillan45m
Explains the design of kotlinx-coroutines-test and how to write deterministic coroutine tests using Room, LiveData builder and Retrofit fakes; shows using…
Talk in English on
Building a cross-platform DroidCon app using FlutterRohan Taneja32m
Built a working DroidCon Berlin 2019 app for Android, iOS and web in about 72 hours for Android iOS web using Flutter; data is moved from provided Droidcon…
Talk in English on
Getting Started with CameraX Oscar Wahltinez, Caren Chang25m
CameraX is a Jetpack library compatible back to Android L and claims 70% fewer lines of code versus Camera2 while standardizing behavior via a CameraX testing…
Talk in English on
MotionLayout: Animation made easyLuiz Santana19m
MotionLayout (ConstraintLayout 2.0) makes complex Android animations declarative by describing transitions in a motion scene XML and triggering them with…
Talk in English on
Android Studio Super ShortcutsYugo Matsuda, Saiki Iijima38m
Live demos show Android Studio shortcuts that replace mouse work and speed routine edits, refactors and debugging on a real 700,000+ line codebase, claiming up…
Talk in English on
Modularization for dynamic deliveryBen Weiss43m
Switching to App Bundle and Play’s bundle tool reduces shipped bytes dramatically — Plaid drops about 64% file size savings just by bundling and…
Talk in English on
Embrace the WorkManager Pietro Maggi45m
WorkManager reaches stable in 2019 and targets API 14+, offering Worker, CoroutineWorker, and RxWorker (runtime 2.0.1, 2.1 RC adds features). It guarantees…
Talk in English on
Measure What Matters with Jetpack Benchmark (Lightning)JB Lorenzo20m
Uses Jetpack Benchmark to measure real interactions on the OLX app: scrolling and randomized clicks across a mock dataset, with output in nanoseconds and a…
Talk in English on
Developing Themes with StyleNick Butcher, Chris Banes46m
Explains why themes (semantic variables applied to a context) beat styles (view-only key/value maps) for app-wide branding, shows how to use theme overlays and…
Talk in English on
What ~new~ strange things one can find in AndroidX package.Aleksander Piotrowski40m
Covers concrete, usable surprises in AndroidX: VersionedParcelable (formerly SafeParcelable) is a Java-focused parcel format that survives field changes and…
Talk in English on
Tablets, Desktops, Foldables Oh My!Pietro Maggi30m
Android on phones, tablets, Chrome OS and foldables requires concrete changes: handle configuration changes instead of relying on relaunch, set…
Talk in English on
"Go(lang) for mobile"Vignesh Ramachandra, Jyoti Dubey20m
Shared business logic compiles to native artifacts using gomobile bind producing AAR and .framework packages that include a .so runtime and JNI stubs; Cgo acts…
Talk in English on
What is new with UI in Android Q. New Features and APIs.Manuel Vicente Vivo, Murat Yener41m
Covers concrete Android Q UI changes and how to use them: foldables require handling configuration/resizability (android:resizeableActivity is true by default)…
Talk in English on
Jumping into Jetpack Compose way too early to see what's insideLouis Tsai19m
Jetpack Compose replaces views with composable functions that annotate Kotlin code, run as plain functions and draw directly to a canvas; the system is split…
Talk in English on
Iterative Mobile DevelopmentAndrea Falcone36m
Argues that shipping one feature fast beats waiting for five finished ones by limiting work in progress and aligning the whole team on a single goal, shows…
Talk in English on
Google Data Collection on AndroidDarryn Campbell34m
Creates a VPN man-in-the-middle with a custom certificate authority on a Nougat 7.1 device, captures and decrypts most HTTPS traffic but hits a wall because…
Talk in English on
Building Android apps from your local terminal with the CLIKrisztián Gödrei, Tamás Papik14m
Shows using the Bitrise CLI to create and run Android builds locally: the demo runs bitrise init to generate bitrise.yml and bitrise-secrets.yml, auto-detects…
Talk in English on
I Built the Exact Same App in Kotlin, Nativescript and FlutterArnav Gupta36m
Built the same realworld.io Medium clone three ways: Kotlin native (Kotlin + XML), NativeScript (TypeScript + Vue), and Flutter (Dart). Finished apps match…
Talk in English on
Designing in the Age of MachinesPanayotis Tzinis24m
Team builds a Google Clips-inspired ML system for astronauts on the ISS, faces 1.5 years of regulation work and a year where models predict well but the…
Talk in English on
CoCoS - Remote configuration with super powersSebastian Paulus, Yusuf Figanioglu27m
CoCoS delivers a remote configuration platform that matches JSON contexts against rules stored in Elasticsearch and returns merged JSON responses at runtime…
Talk in English on
Backup, Restore, MigrateAl Sutton14m
Android device migration focuses on using Auto Backup plus an encrypted Cloud Key Vault so app data is encrypted on-device and Google cannot read backups…
Talk in English on
Better TogetherNiamh Power25m
Monzo claims cross‑disciplinary squads and tool unification cut platform drift and make both apps closer to feature parity. They move Android and iOS CI to…
Talk in English on
CI experts on Android and iOS dependency managementMartin Jeret18m
Measure shows a simple Flutter app with a Firestore dependency jumps iOS debug builds from ~50s to ~20+ minutes and release builds to ~40–42 minutes, while…
Talk in English on
Android with a side of Flutter, pleaseFilip Hráček34m
Shows how to drop a single Flutter activity or view into an existing Android app using the add to app workflow (flutter create module, tweak Gradle and Java 8…
Talk in English on
Inject Basics!Jitin Sharma39m
Shows how to do dependency injection with raw Kotlin and a small Android app (dog photos, later cats) handling networking, storage and threading without a…
Talk in English on
Fluttering at 60 FPSKrzysztof Sroka40m
Explains why 60 FPS really means a 16 ms budget and shows how Flutter splits work across the UI and GPU threads so slow Dart code or expensive clips kill…
Talk in English on
Kotlin Not-to-Do List - What we should avoid doing in KotlinMarcin Moskała42m
Kotlin code warns against hiding important details: declare public API types instead of relying on type inference (author once had to read bytecode to find a…
Talk in English on
Getting StARted with AR FoundationLiam Sorta20m
Unity's AR Foundation is a preview Unity package that wraps ARKit and ARCore, letting teams build cross‑platform AR using AR Session, AR Session Origin and…
Talk in English on
The Silver Bullet That Wasn’t - the story of HubsElin Nilsson39m
A component-driven, cross‑platform UI system uses a backend-driven JSON schema to render native widgets via a core hubs adapter + hubs config on Android and a…
Talk in English on
Creating Smarter ApplicationsMaoz Tamir42m
Shows how to add real on‑device ML using TensorFlow Lite and Google ML Kit (Firebase) with cloud labels ~40,000 vs on‑device ~10,000, plus Colab and…
Talk in English on
Mobile at Scale with React Native & Multi-Module ArchitectureLev Vidrak34m
Wix runs a single React Native app that ~80 mobile developers across ~20 teams ship to stores daily by separating an Engine (native APK/App build, shared…
Talk in English on
Mobile Test Automation at the BBC: Then, Now and NextJitesh Gosai30m
BBC moves from flaky UI automation to a component strategy that speeds releases by testing at two levels and deploying real APKs to devices. The team wraps…
Talk in English on
Improving Android Build PerformanceVolker Leck40m
Shows concrete fixes and tools: use Gradle profiler to automate scenarios, upload results to build scans, and run Gradle 5.5 with Android Gradle Plugin 3.4.1…
Talk in English on
From OOP To FPAdnan A M44m
Explains a practical path from OOP to FP in Kotlin, showing the team’s year‑long migration and concrete wins: purer functions that simplify unit tests…
Talk in English on
Where the Heck Am I? Understanding and Managing Location in Your ApplicationRichard Süselbeck37m
Explains exactly how satellite positioning computes a fix: 4 satellites for trilateration, atomic-clock timing corrected by relativity (a 35 µs/day offset…
Talk in English on
Understanding Gradle and writing your own Gradle PluginNiklas Baudy33m
Shows how to write a Gradle plugin in Kotlin that compiles into a jar with a META-INF plugin properties file, publishes to mavenLocal, registers tasks using…
Talk in English on
Android... without GoogleDavid Branton37m
Claims a single codebase can target Google and non‑Google Android by using product flavors, manifest merging, interfaces and DI, and shows that maps, location…
Talk in English on
Hire Better Faster StrongerAnastasia López, Vivien Barousse44m
Calls to ditch the top 5% myth and define hiring by team‑specific core requirements and concrete nice‑to‑haves, not vague prestige metrics. Job adverts state…
Talk in English on
Minimalism Driven DevelopmentMiguel Beltran34m
Minimalism-driven development argues for concrete choices: avoid shipping heavy frameworks—Electron bundles Chrome per app—and inspect hidden baggage like a…
Talk in English on
From managing code dependencies to managing peopleSebastiano Gottardo37m
A junior people manager recounts concrete actions and results from the first 10 months of the role: running frequent one‑on‑ones, owning hiring (team grows…
Talk in English on
Your Strengths Include: Work/Life BalanceParth Padgaonkar28m
Defines work/life as three buckets and uses an interactive balance wheel self‑assessment (mobile page) plus a tiny survey of about five peers to back practical…
Talk in English on
Android on the Road: Playing Music with UAMP in CarsNicole Borrelli13m
Adds Android Automotive support to the UAMP sample by creating an automotive module, setting the manifest feature flag, and extending the MediaBrowserService…
Talk in English on
Going edge-to-edge with Gesture NavigationChris Banes, Rohan Shah37m
Android Q makes apps draw behind system bars and adds gesture nav plus new inset APIs: use WindowInsetsCompat and onApplyWindowInsets to add padding, set flags…
Talk in English on
Wake Up, NeoVladimir Ivanov17m
Industry metrics show >1 billion user records exposed and frequent breaches caused by open Elasticsearch instances and careless APIs; a banking app leaks…
Talk in English on
Jetpack Compose — Next Gen Kotlin UI Toolkit for AndroidRagunath Jawahar32m
Jetpack Compose presents a Kotlin-first UI toolkit that builds UI as functions of state using a runtime plus a compiler plugin; the demo builds a working fruit…
Talk in English on
Taking your users’ money: In-app billing from start to best practicesKai Koenig44m
Covers Google Play Billing Library (v2/v3) and the Play Developer REST API, warns that the library requires you to supply SKU lists because there is no API to…
Talk in English on
Fate is Bull$h!t: Get Happy, Get Known, Get PaidStacy L Devino41m
Argues that fate is bull$h!t and that career progress follows three steps: get happy, get known, get paid. Claims concrete wins — no coding exams for last…
Talk in English on
Designing for Sustainable GROWTH/Digital Well BeingPurnima Kochikar26m
Google Play is running dozens of experiments and publishing case studies via the Academy of App Success and Medium while pushing Android Q permission…
Talk in English on
Building kiosk app: tips and tricksKirill Bubochkin29m
Describes a two-app architecture: a standalone kiosk UI plus a device policy controller that provisions devices, grants permissions and controls updates. Uses…
Talk in English on
Dagger Reflect - The circle from runtime to compile time and back to runtimeNelson Osacky29m
Dagger Reflect replaces Dagger’s heavy generated code with a reflection runtime that cuts annotation‑processing time and speeds local builds: measured average…
Talk in English on
Move over certificate pinning. Certificate transparency is here!Matthew Dolan08m
Certificate Transparency is already replacing pinning in Chrome and actually prevents silent misissuance by publicly logging certificates in append only Merkle…
Talk in English on
Leading edge: Sync solutions for connecting offline-appsVivien Dollinger, Markus Junginger18m
Claims that enterprise cloud traffic falls from 90% to 25% drive a push to run and store more work on devices for privacy, latency, cost and offline…
Talk in English on
A LUT (lot) of image filters on AndroidGarima Jain33m
Implementation uses RenderScript on Android to apply 3D LUTs for image filters, converting designer LUTs (HALD/horizontal strip) into a RenderScript…
Talk in English on
How to Build Android Apps for CarsCarsten Isert14m
Android Auto runs from the phone and already reaches 50+ million cars in 36 markets while Android Automotive OS runs in-vehicle so no phone is required and…
Talk in English on
A Real use case of practical AR-AI couple - Size my luggageGiovanni Laquidara37m
Android native app overlays a fixed-dimension 3D luggage model onto camera view and lets users drag and rotate it to check airline allowance; it uses ARCore…
Talk in English on
From Four Wheels to TwoRJ Marsan33m
Lyft adds a scooter‑share to the existing app in two months by shipping a self‑contained implementation behind feature modules and feature flags, using…
Talk in English on
Driving inclusive design at your companyAtaul Munim19m
At Monzo a small group pushes inclusive design across ~15–20 Android engineers split into ~10–20 teams by using an accessibility Slack channel for escalations…
Talk in English on
Migrating to Paging LibraryFlorina Muntenescu34m
Step‑by‑step migration from RecyclerView.Adapter to Android Paging Library with Room and LiveData, replacing LiveData<List> with LiveData<PageList> and…
Talk in English on
Supporting Each Other: Growth for Juniors and SeniorsLara Martin34m
Argues that hiring juniors is practical and valuable, not just idealistic: juniors bring fresh motivation and flexible mindset, can learn quickly when given…
Talk in English on
Setting up a bug bounty program for your appSebastian Porst35m
Overview of a practical bug bounty: Google Play’s program runs on HackerOne, covers 40 partner apps and pays roughly $1k–$3k per bug, with almost $200k…
Talk in English on
DekompilingMárton Braun39m
Walks through a concrete Kotlin example and the IDE tools used to inspect what actually runs: use Show Kotlin bytecode and the decompiler to see top‑level…
Talk in English on
Overview of common Android app vulnerabilitiesSebastian Porst41m
Google Play’s bug program triages hundreds of reports into 19 classes across six categories and pays bounties (about $200,000 over 18 months, $500–$5,000 per…
Talk in English on
Navigation and the Single Activity: Learnings from a SkepticAsh Davies36m
Practical account of adopting Android Jetpack navigation: the navigation component plus the SafeArgs plugin implements type‑safe arguments, generates deep…
Talk in English on
A Journey in Shared Code with Kotlin MultiplatformAnkush Gupta42m
Quizlet ports its grading “secret sauce” from JS into Kotlin Multiplatform, runs artifacts on JVM, JS, and native, and ships shared libraries to Android, iOS…
Talk in English on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.