~/conference

droidcon SF 2019

date:2019-11-18..2019-11-19
location:San Francisco, United States
series:droidcon SF · one edition
tags:[android]
titleauthorlength
PokeLeaks: Gotta Catch 'em AllPierre-Yves Ricau49m
Hands‑on workshop that injects hidden leaks into the open‑source CatchUp app, adds LeakCanary 2, and reproduces leaks using Android Studio Canary and emulator…
Talk on
Opening Keynote: Android Then & NowRomain Guy, Chet Haase46m
A concise timeline: Android shifts from Dalvik to ART (faster runtime, shorter GC pauses), adds Treble to separate vendor drivers, and builds Jetpack libraries…
Talk on
ConstraintLayout 2.0 and MotionLayout WorkshopNicolas Roard, John Hoford38m
Live demo converts a ConstraintLayout to MotionLayout and uses the Motion Editor in Android Studio 4.0 Canary 4 with Constraint Layout 2.0 beta 3. The example…
Talk on
Easy, Scalable Backends for Android DevelopersDoug Stevenson40m
Shows how to build serverless Android backends with concrete tools and steps: use Cloud Functions for Firebase (HTTP and event triggers, callable functions…
Talk on
A Day in the Life of a Mobile Malware Reverse EngineerSalvador Mandujano29m
Daily workflow for Android malware reverse engineering: fetch APKs from Play Store, OEM builds or device-sent samples; unpack DEX to Smali and decompile with…
Talk on
Deep Learning: a practical introduction from an Android dev perspectiveJoaquim Verges47m
An Android dev walks through installing Anaconda and TensorFlow 2.0 alpha, wrestling with CUDA and PyCharm, then ports a pretrained DeepLab v3_257.tflite model…
Talk on
The device is running on it's own! Full-stack automation of UI testing on a custom android firmware.Faraz M.R., Bharath MG15m
A custom Karoo bike computer running a forked Marshmallow Android gets full CI/CD UI testing: an orchestrator app auto-downloads and installs OTA ROMs, runs…
Talk on
The Journey From Legacy Code to Idiomatic KotlinSeetha Annamraju16m
Outlines a practical path: choose a component, either rewrite file from scratch or use convert Java file to Kotlin then fix compiler errors, address IDE…
Talk on
Buy a Plunger Before You Need a Plunger: Scalable, Flexible, Modular, Preventative ArchitectureJosh Williams36m
Argues that a small set of concrete patterns — presenter + interactor + transformer, clear platform/framework/implementation layers, and Dagger-style…
Talk on
Creating Augmented Reality Solutions in Enterprise VerticalsPat Narendra35m
Smatphone AR frameworks open enterprise use but must solve persistence, calibration and usability. Zebra’s rugged Android devices (SD660) pass ARCore…
Talk on
Kotlin Multiplatform Library DevelopmentKevin Galligan37m
Shows a concrete approach to wrapping native SDKs by publishing a Firestore KMP wrapper that uses empty type aliases plus extension functions to avoid delegate…
Talk on
The Facebook Mobile Performance Tooling Ecosystem: An OverviewTim Mellor18m
Claims that focusing on performance helped reverse declining engagement and that Facebook measures latency and jank with concrete signals: time to recent…
Talk on
Android at Scale @SquareRalf Wondratschek32m
Square’s Android Point of Sale repo moves from a tangled “hairball” to a mono-repo of many small libraries by enforcing public/impl/impl-wiring modules…
Talk on
State-machine Driven Payment FlowYisong Wu, Fernando Pereira36m
Tinder replaces a legacy payment stack with a state‑machine + DSL implemented in the open source StateMachine library to make purchase flow deterministic…
Talk on
Breaking Down ModularizationZach Sweigart20m
Explains a concrete multi‑module layout with layers: application, feature, application‑library, base, core, utility and shows RIBs as the chosen app…
Talk on
Hands On MvRx: Building Real AppsGabriel Peal38m
MvRx is an Android architecture library built on Jetpack and used at Airbnb for 500+ screens, claiming a new Mavericks screen daily; it is Kotlin-only, scopes…
Talk on
Coroutines Zero to HeroPaulo Sato31m
Kotlin coroutines are explained with concrete mechanics: how suspend functions compile to continuations, how CoroutineContext composes Job and Dispatchers, and…
Talk on
Performance in a Kotlin WorldSean McQuillan43m
Shows how to find real Android bottlenecks using Android Studio profilers — CPU profiler, memory, energy and network — and system tracing (cystrace/Perfetto)…
Talk on
Results of Scanning the Top 45 Android Mobile Banking AppsScott King32m
Scans of 45 top US Android banking apps find concrete failures: about 75% fail insecure data storage, many apps contain hardcoded API keys and inline…
Talk on
Learn to Think Like a HackerNeal Michie33m
Shows exactly how attackers work: apps are easy to reverse engineer, dynamic tools like Frida let an analyst hook and control runtime, fuzzing finds remote…
Talk on
Kotlin beyond AndroidGuillermo Orellana31m
Kotlin code runs beyond Android: a Ktor server with test application handles routes and API tests by simulating requests (no HTTP sockets), builds and deploys…
Talk on
MotionLayout & Motion EditorNicolas Roard, John Hoford34m
MotionLayout (ConstraintLayout 2.0) plus the Motion Editor in Android Studio 4.0 claim to replace manual animation code by declaring states in a separate…
Talk on
Reactive Approach to Delegation in KotlinAida Issayeva35m
Shows how Kotlin's class and property delegation (using the by keyword) is used to build a custom button with three explicit states (showLiked, showUnliked…
Talk on
Architecture Agnostic UI DevelopmentVinay Gaba, Marcos Paulo Damasceno38m
A concrete recipe: model UI as sealed view states and events using sealed classes + data classes as view states, drive transitions with Tinder's open source…
Talk on
Dagger Reflect - The circle from runtime to compile time and back to runtimeNelson Osacky35m
Dagger Reflect replaces Dagger’s heavy generated component with a reflection runtime that swaps a 10,000‑line generated component for ~20 lines so local…
Talk on
Your Strengths Include: Work/Life BalanceParth Padgaonkar37m
Short, practical guide that delivers tactics not platitudes: a balance wheel self-assessment (attendee quiz crashed under load), survey of ~5 Android peers…
Talk on
Structure Unit Testing with SpekMartin Petrulak32m
Spek is a Kotlin testing DSL that runs on the JUnit 5 engine and supports Android with a dedicated IDE plugin and Jacoco coverage. It provides memoized…
Talk on
Voyager: Navigation and DI for FlutterLukasz Wiśniewski26m
Voyager is a Flutter widget router that reads a YAML configuration map and turns paths into widgets via a custom plugin architecture, using dependency…
Talk on
Let's Build a Dependency Injection FrameworkLeland Takamine32m
Live codes a DI system implemented as an annotation processor that uses JavaPoet to generate a concrete scope implementation at compile time, producing…
Talk on
Jetpack Security Extension Overview, Data-at-rest and in-transitNicole Borrelli18m
Jetpack Security provides concrete APIs for encrypting files and SharedPreferences using Android KeyStore for keys (requires API level 23 and above)…
Talk on
Growing at Work with Community-oriented DevelopmentJohn Li15m
Organizing internal meetups, tech talks, roundtables, lightning talks, hackathons and ongoing workgroups produces concrete outcomes: one meetup contact leads…
Talk on
We gave a Mouse an NDK: Non Android Developers' Experience with NDKArmin Rocher, Bruno Garcia36m
Sentry builds a production NDK crash pipeline that captures native crashes with signal handlers, unwinds frames by increasing the sigaltstack and then dump…
Talk on
Kotlin Internal DSL - Create Your Own LanguageVignesh Ramakrishnan37m
Kotlin features let an internal DSL compress a messy 20–30‑field data‑class setup into a short builder chain and make Android patterns like intent creation and…
Talk on
Working with Alternative Build SystemsGautam Korlam39m
At Uber Gradle configuration hits five plus minutes and a full sync once took an hour and a half on a 2,000+ module codebase, so the company converts projects…
Talk on
Next Generation Android UI with Jetpack ComposePedro Veloso35m
Jetpack Compose is an experimental, Kotlin-first UI library (around v0.1.0dev) that builds UIs with composable functions like Column/Row/Flex, material…
Talk on
UI Testing at PinterestRyan Cooke, Freddy Montano45m
Pinterest runs a scaled UI test system that shrinks a six‑hour suite into commit‑time checks by moving to Firebase Test Lab with Flank sharding, using…
Talk on
ARCore: Visualizing the InvisibleChrystian Vieyra, Rebecca Vieyra34m
NSF-funded project builds a smartphone app, Physics Toolbox AR, that fuses ARCore + magnetometer readings to render floating magnetic field vectors in real 3D…
Talk on
Intro to App ModularizationMario Sanoguera34m
Explains how Android apps split into application, Android library (AAR), and Kotlin/JAR modules, and shows concrete steps that cut full rebuilds from 4–5…
Talk on
JUnit 5 Testing: Android Unidirectional Data Flow with LiveDataAdam Hurwitz33m
Starting from Coinverse's LiveData + UDF Kotlin app, the talk shows a concrete test workflow: modularize viewmodel and repository, mock repository flows with…
Talk on
Coroutines and Rx: A Battle Towards AsynchronicityAmanjeet Singh26m
Compares RxJava and Kotlin coroutines with concrete tradeoffs: Retrofit now supports suspend functions so coroutines win simple HTTP calls with no adapter…
Talk on
Inside the RoomEffie Barak44m
Deep dive into Room shows how it maps three layers—SQLite, Android/AndroidX and Room runtime—so readers and writers actually behave: file locks escalate from…
Talk on
PokeLeaks: Gotta Catch 'em AllPierre-Yves Ricau?
Speakers: Pierre-Yves Ricau Sources: droidcon San Francisco 2019 Bring your laptops and your investigative skills, we're going on a memory leak hunt! We'll…
Talk on
Machine Learning on Android DemystifiedTatyana Casino39m
Compares cloud vs on‑device ML and shows a runnable Android path: Kotlin examples using TensorFlow Lite with GPU delegate and NNAPI to run a pose‑estimation…
Talk on
Advanced & Practical MotionLayoutJason Pearson40m
ConstraintLayout 2.0’s MotionLayout is shown as a practical replacement for ad hoc animators: animations live in XML motionScene files, transitions use onClick…
Talk on
Attributed Everything: Ensuring Quality for Large AppsAnton Lopyrev, Youming Li, Ben Roman40m
Snap rewrites its Android app and then builds an attribution system that maps every file and metric to a team using owners files and runtime attributed…
Talk on
Navigating Android Like a ProVivek Chanddru41m
History of Jetpack Navigation, what changed from early alphas to 2.1/2.2/2.3, and concrete migration steps: add nav graph XML, use Safe Args plugin to get…
Talk on
E2E2U: Slack’s journey to developer-driven end-to-end testingValera Zakharov44m
Slack migrates its black‑box Calabash suite to Espresso migration, converting ~100 slow E2E tests down to ~80 stable ones and integrating them as…
Talk on
Dagger 2, 2 Years LaterMatt Dupree38m
Two years of Dagger 2 adoption produces specific pain points: choice of Dagger Android versus manual injection, whether to use binds vs provides, how to pick…
Talk on
Going with the Flow - Using Coroutines 1.3.xRick Busarow44m
Shows concrete migration patterns: Retrofit 2.6.0 uses suspend service methods, Flow is Flow stable in Kotlin 1.3.0, and channels change semantics. Compares…
Talk on
A Lighter Layout Abstraction With ContourAdam Erb31m
Contour is an open‑source Cash App Kotlin library that replaces XML UIs with a thin DSL around Android layout APIs, using Contour layout and applyLayout…
Talk on
The (not so) hidden cost of sharing code between iOS and AndroidEyal Guthmann33m
Dropbox abandons sharing business logic in C++ after years of operational cost: 85,000 lines of C++ (plus 35k open source and 10k build tooling), a homegrown…
Talk on
Level Up Your Extension GameAida Issayeva13m
Shows concrete rules and pitfalls for Kotlin extension functions with examples that compile and interop with Java, including using Android KTX to replace 70+…
Talk on
Consistent Design with Custom Lint ChecksAlex Lockwood23m
Android teams extend Android Lint (over 300 built-in checks exist) with small, targeted detectors that enforce design rules: hard-coded hex colors in layouts…
Talk on
Linux & Android Development on Chrome OSEmilie Roberts, Adriana Jara23m
Chromebooks run a Debian container via Crostini that auto downloads a VM and exposes a terminal so developers install Git, Vim, Visual Studio Code and Android…
Talk on
Powering Modularization at Airbnb: Plugin ArchitectureAdell Hanson-Kahn19m
Airbnb implements a plugin architecture that combines an annotation processor with Dagger multibindings and a Scabbard intermediate generator so modules can…
Talk on
Using the Bento Framework to Upgrade Legacy AppsTyler Argo38m
Yelp replaces a tangled set of nested adapters and ListViews with the open source Bento framework, wrapping the legacy sectioned adapter into a…
Talk on
Playing Videos on Android? ExoPlayer2 at Your Service!Julien Salvi41m
ExoPlayer 2 is a Google open source player that actually shows how to handle formats, DRM and offline playback rather than promise examples: it supports MP4…
Talk on
Powering Worldwide Learning with Kotlin MultiplatformAnkush Gupta45m
Quizlet adopts Kotlin Multiplatform to share its core “secret sauce” across iOS, Android and web for over 50 million monthly users, converting the JavaScript…
Talk on
Adding Flutter to Your Android AppMatt Carroll26m
Shows exactly how to add a Flutter module to an Android app by creating a Flutter module, then either producing an AAR via the Android Studio Flutter > build…
Talk on
Building One of the World's Largest Interactive Data Visualisation ExperiencesSupratim Chakraborty37m
Built VizInteract on Android-x86 by modifying the kernel to add driver support for a PQ Labs IR overlay and enable 12 simultaneous touch points on an 80‑inch…
Talk on
MUwS, PHA, vulnerabilities: A walk through on what not to doSalvador Mandujano42m
Google Play Protect processes ~1.2M APKs with over 1 billion device scans per day using ~30,000 CPUs, extracting static (manifests, strings, images) and…
Talk on
Get Your App to Work at WorkAser Samak18m
Android Enterprise splits work and personal data using work profiles and three components: managed Google Play, enterprise cloud APIs (EMM) and the Device…
Talk on
Working Around KAPTVladimir Tagakov09m
Lyft replaces KAPT by building NAPT which skips Kotlin stub generation and reduces annotation processing overhead, claiming much faster builds vs KAPT where…
Talk on
Implementing a Design SystemNathanael Silverman29m
Airbnb implements a vertical stack of row components as the primary UI unit, backed by tooling: a RecyclerView framework Epoxy to auto-generate models, a…
Talk on
Magic of ADBWojciech Sadurski40m
ADB runs as an init-started native daemon communicating with an ADB server on localhost:5037 and uses JDWP threads to expose debugable app processes so Android…
Talk on
MVVM & Nested Fragments/Views: ViewModel ContractsMarcos Paulo Damesceno, Bret Erickson24m
Claim: define small interface-based ViewModel Contracts that fragments expect and pass the parent ViewModel class in their arguments so fragments obtain the…
Talk on
Box Enterprise SecuritySudeep Bhowmick, Don Cung27m
An enterprise Android app that enforces SafetyNet API root and CTS checks with server-side JWT validation and a default API quota of ~10,000 calls, plus IP…
Talk on
Performance by ConstructionGaurav Lochan34m
WhatsApp keeps a vanilla Android stack (activities, fragments, SQLite) and prioritizes simplicity and quality: it stays single-dex (<64k methods) to reduce…
Talk on
Leveling Up: Panel DiscussionSha Sha Chu, Lien Mamitsuka, Ty Smith, Romain Guy, Joaquim Verges, Gabriel Peal01h 32m
A candid panel on Android leadership lays out concrete practices and tradeoffs: orgs run Android teams of eight to seventy engineers; platform teams prioritize…
Panel on
Native, React Native, Flutter and MoreBarlow Tucker21m
Compares native Android/iOS, React Native (JS) prototype and Flutter (Dart) prototype by actually building the same Unsplash photo list app in each stack and…
Talk 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.