DroidKaigi 2019
2019-02-07..2019-02-08
Tokyo, Japan
[DroidKaigi 2016, DroidKaigi 2018, DroidKaigi 2019, DroidKaigi 2021, DroidKaigi 2022, DroidKaigi 2023, DroidKaigi 2024, DroidKaigi 2025, DroidKaigi 2026]
| title | author | length |
|---|---|---|
| Trash Talk | Romain Guy, Chet Haase | 49m |
Examines concrete ART vs Dalvik changes: thread‑local bump allocator regions (≈256KB), finer locks, and a large object heap (>12KB) allocated with malloc to… | ||
| Troubleshooting your designer's, and vector graphics | Mitchell Tilbrook | 22m |
Adding vector icons often breaks because designers export selections instead of artboards causing implicit translation, and unaligned anchors blow up path… | ||
| multi-module Android application | Jumpei Yamamoto | 52m |
An Android app was split from one large Gradle module into 40 modules to speed builds: full builds fell from ~36s to ~31s with parallel modules and incremental… | ||
| Communications Debugging Tips That Help When You Get Stuck | inomata | 31m |
Practical debugging checklist for network problems in Android apps: log full exceptions and stack traces, inspect HTTP status codes and response… | ||
| BLE App Design Patterns | 8yabusa | 30m |
An Android smart‑lock app uses Bluetooth Low Energy and the RxAndroidBLE library, splitting data into 19‑byte chunks with sequence bytes to work around the… | ||
| Want to Revisit Your Android Studio Settings? | shiraji | 28m |
Practical Android Studio configuration tips to save time and reduce errors: create custom Quick Lists and keybindings; enable font ligatures for clearer… | ||
| Best Practice for Text on Android and Its Internals | Seigo Nonaka | 43m |
Shows how to speed up Android text rendering by identifying TextView hotspots with systrace and by turning off hyphenation to cut layout cost roughly in half… | ||
| Migrate to build.gradle.kts | tnj | 32m |
Migrate Gradle build scripts from Groovy to the Kotlin DSL incrementally by first using Gradle 5.0 + Kotlin DSL 1.0 and Android Gradle Plugin 3.3+, cleaning up… | ||
| Product Development with Android Things | Takuya Kubota | 30m |
A presentation about using Android Things system-on-module (SoM) as the main controller for a commercial product launched in 2019. It explains practical… | ||
| Bringing Designers and Engineers Closer: Practical Lottie Techniques | bandwagondagon | 30m |
Shows how After Effects compositions, precomps, layers and contents map into Bodymovin JSON that Lottie Android turns into model and drawing classes, and which… | ||
| Implementing a Vertical TextView from Scratch and Related Techniques | Rokuroku | 50m |
A hands-on Android implementation of a vertical (vertical-writing) TextView built from View, InputConnection, Editable and Bitmap is presented, showing that… | ||
| Recreating That AR App with 2019 Technology | Kenichi Takahashi | 31m |
Recreates the Sekai Camera AR app using ARCore and Sceneform ArFragment for camera preview and placing 3D ModelRenderable and ViewRenderable tags. Captures… | ||
| The World of Device Management Enabled by Android Enterprise | Daisuke | 34m |
Covers Android Enterprise device management capabilities and limits, detailing how DeviceOwner and ProfileOwner enable full-device management, work profiles… | ||
| Basic Strategies for State Propagation and Access Control in Flutter Widget Trees | robo | 29m |
Shows a concrete Flutter pattern for propagating and restricting state in the Widget tree: create small role-specific logic classes and provide them via… | ||
| All About Testing Flutter | kikuchy | 51m |
Provides a concrete testing roadmap for Flutter apps: aim for ~70% unit, 20% widget, 10% integration tests. Uses Dart test API with expect/matchers for unit… | ||
| Practical Lottie | kumanomi | 29m |
Shows how Poiboy used After Effects with the Bodymovin plugin to export animations as JSON and play them in mobile apps with LottieAnimationView on Android and… | ||
| Building an Indoor Positioning App with Wi‑Fi RTT | napplecomputer | 29m |
Explains how to measure distance to Wi‑Fi access points on Android using RTT (802.11mc/FTM) available from Android 9 (API 28) and compatible hardware (tested… | ||
| Fast Prototypes with Flutter + Kotlin/Native | JB Lorenzo | 27m |
Conference app gets built in about two weeks of hands‑on work by combining Flutter UI with Kotlin/Native shared logic and a Firebase backend. Method channels… | ||
| Sharing Code between iOS & Android with Rust | Benedikt Terhechte | 30m |
Benchmarks show Rust can be tiny and fast: a CSV-like split/trim/sum example runs near-instant versus Kotlin’s ~1.8s and C++ ~0.1s, and a 27 MB JSON parse is… | ||
| Code Review as a Collaborative Journey | hydrakecat, punchdrunker | 28m |
Defines code review as a collaborative journey with explicit steps: state the goal and background, describe strategy, include verification steps, run and… | ||
| What Is the Best Architecture for Android Apps That Integrate Closely with External Devices? | tomoya0x00, Uri | 32m |
An Android taxi app must integrate tightly with external hardware (meter buttons, BLE loggers, and server pushes). The team defines meter protocols as… | ||
| Make the Most of Android Vitals | kr9ly | 24m |
Shows how to use Google Play Console Android Vitals together with Android Studio profilers to find and fix startup, rendering, and ANR hotspots. Describes… | ||
| Managing Library Versions with Gradle BOM Import | Kohei Yamamoto | 20m |
Android Studio 3.4+ with Gradle 4.6+ can import Maven BOMs so a single platform file supplies group:artifact version mappings; Gradle 5.0 adds version… | ||
| Not Just Rotation: Configuration Changes on Android | Nicole Borrelli | 23m |
Android configuration changes include orientation, window/screen size, UI mode, font scale and pixel density, external displays and foldables, and keyboard… | ||
| Flag Management Techniques That Support Development of Massive Apps | munetoshi | 27m |
Describes using feature flags instead of long-lived branches to reduce merge conflicts, allow merging to main independent of release timing, and enable… | ||
| Ah, Wonderful TDD — Peace of Mind for Apps and Engineers | Saiki Iijima | 29m |
Presents concrete TDD rules (red–green–refactor loop plus three strict rules) and demonstrates them by implementing a Janken (rock–paper–scissors) class with… | ||
| Animations in Flutter | Salih Guler | 27m |
The session demonstrates working Flutter code that builds fade, slide, staggered and rotating animations using AnimationController and Tween… | ||
| Building for next billion | Neil Mathew | 29m |
Analysis of Android Go shows a concrete route: Android Go ships a stripped OS and promotes Android Go 5–10MB apps so optimized apps surface higher in Play… | ||
| Further Speeding Up UI Tests (Espresso) | tarappo | 31m |
Practical techniques to speed up Android UI tests written with Espresso by reducing overall run time. Covers tips in three areas—test code practices, test… | ||
| Journey of APK from compilation to launch | Amanjeet Singh, Romi Chandra | 40m |
In this talk we will cover journey of APK when we hit run button of Android studio till the point when Launcher Activity onCreate method is called. Following… | ||
| Lifecycle, LiveData, Viewmodels - The inner wiring | Florina Muntenescu | 23m |
Explains concrete internals: lifecycle owners are Activity, Fragment, Process (via a manifest provider) and Service; fragment view lifecycle is separate from… | ||
| What does "adb lolcat" do? A deep dive into adb | 32bitdesi | 30m |
Explains exactly what happens when typing adb lolcat: the client forks a local single binary for client and server, the server multiplexes TCP sockets to… | ||
| Designer–Engineer Workflows in Android App Development | taquo | 30m |
This talk explains a concrete workflow to close designer–engineer gaps in Android apps using Material Components (MDC), the Material Theming Sketch plugin, and… | ||
| From TensorFlow to ML Kit: power your Android application with ML | Qian Jin | 29m |
A hands‑on timeline: an app called Magritte is built to recognize daily objects and speak their names using transfer learning and a custom classifier, starting… | ||
| Write Unit Tests with Spek | Ayako Morimoto (moriiimo) | 29m |
Spek 2.0 is presented as a readable, JUnit-alternative that enforces ordered execution and BDD-style structure so tests serve as design documentation. Examples… | ||
| Design Improvements for an Existing App Based on the Guide to App Architecture | nakamuuu | 28m |
Explains how to improve an existing Android app’s design using the Android Developers “Guide to app architecture”, focusing on Architecture Components to… | ||
| CI Recipes and Release Flow Strategies for Medium and Larger Apps | KazaKago | 30m |
Team develops medium-to-large Android apps with a 3–5 engineer cadence and biweekly releases using GitFlow branches (master/develop/feature/release/hotfix) and… | ||
| How We Optimized Our Release Flow Using Google Play Console Release Tracks | litmon | 25m |
Cookpad automated Android releases so merges to master upload an APK to the internal test track and a Jenkins cron job promotes builds… | ||
| Introduction to Cross‑Platform Development with React Native and Expo | mrtry | 26m |
Introduces using React Native with Expo to build cross-platform apps entirely in JavaScript by developing in the Expo client, distributing releases via Expo’s… | ||
| Slice Your App: Inside Slices and How to build it | Hiroyuki Mori | 25m |
Explains how Slices are implemented as a ContentProvider subclass that must return a template-based Slice within 2 seconds (no blocking network or DB), so apps… | ||
| Foundations of Dynamic Analysis and Hooking of Android Apps with Frida | Ken Kitahara | 25m |
Frida is presented as a developer tool for dynamic analysis and hooking of mobile apps, letting you trace and modify function calls in memory. The talk… | ||
| Inside an AOSP Mail App Implementing WebView + ViewGroup and Its Application to News Apps | ogapants | 29m |
Describes how AOSP Mail avoids embedding a WebView inside a ScrollView — which can cause content cut-off and occasional IllegalStateException on some devices —… | ||
| Controlling Safe Browsing to Protect WebView | Akihiro Shiota | 28m |
Android WebView includes Google Safe Browsing by default on v66 and newer to block phishing, malware, and unwanted software. Apps can call startSafeBrowsing… | ||
| Practical WorkManager | _atsushisakai | 28m |
Describes using Android WorkManager to prefetch images and improve perceived load times: metadata is synced to SQLite, a unique periodic work (≈24h) with Wi‑Fi… | ||
| Managing In-App Navigation with the Navigation Architecture Component | Yu Takahashi | 27m |
The talk explains Android Jetpack’s Navigation Architecture Component (v1.0.0‑beta01), a library and tooling that manages fragment transactions, builds correct… | ||
| Practical Performance Tuning on Android | neonankiti | 53m |
Practical Android performance tuning for a healthcare app: measured CPU, memory, network and rendering with Android Profiler and Layout Inspector to identify… | ||
| Dependency Injection You Can Start Today | kobakei | 28m |
Explains dependency injection (DI) for Android apps: why DI removes hard-coded dependencies to make large apps easier to test and customize, and how to apply… | ||
| Deep dive into MotionLayout | thagikura, John Hoford, Nicolas Roard | 50m |
MotionLayout (ConstraintLayout 2.0 alpha3) lets layouts animate declaratively via a separate motionScene XML that holds constraintSets, transitions, and key… | ||
| Get a Cool Unit Test Environment with Spek2 + MockK + JaCoCo | Subroh Nishikori | 30m |
Kotlin unit-test setup using Spek2 (an RSpec-like DSL on JUnit5) with MockK for mocking final classes, singletons and extension functions, and JaCoCo for… | ||
| Improving Voice Command Recognition Accuracy Using DialogFlow NLP | KAKKA | 30m |
Android uses the on-device SpeechRecognizer to obtain transcripts and sends them to DialogFlow (via SDK or a server-authenticated v2 proxy) using console… | ||
| nothing matches | ||