DroidKaigi 2022
2022-10-05..2022-10-07
-- online --
[DroidKaigi 2016, DroidKaigi 2018, DroidKaigi 2019, DroidKaigi 2021, DroidKaigi 2022, DroidKaigi 2023, DroidKaigi 2024, DroidKaigi 2025, DroidKaigi 2026]
who it's for
android developers, ui engineers, app architects, qa engineers, accessibility specialists, engineering managers, devops engineers
topics
Jetpack Compose text internals; Compose performance tuning; Compose previews with Paparazzi; Molecule presentation logic; Maps SDK to Compose migration; Material 3 dynamic color (HCT); AAB inspection with bundletool; build metrics with gradle profiler; CameraX and ML Kit passport OCR; DataStore migration strategies; notification channels mapping; per-app locale APIs
| title | author | length |
|---|---|---|
| Considerate App Update Delivery | Jumpei Matsuda | 25m |
Shows how to extract and monitor file-level metrics from AAB and APK artifacts—package name, versionCode/name, targetSdk, declared permissions… | ||
| Deep Dive into Jetpack Compose Text | Seigo Nonaka | 26m |
Jetpack Compose text now uses platform layout and graphics APIs directly (no TextView), implementing a Paragraph-based layout layer, unbundled library… | ||
| Getting Started with Build Metrics | Komatatsu | 23m |
Shows how to measure real Android/Gradle build time using concrete tools: use Build Analyzer to see per-task percentages, run gradle-profiler with scenarios… | ||
| Visualizing the Human Voice | Miyuki Onuma | 33m |
Shows how to capture, render and visualize human voice on Android using AudioRecord for real‑time input and AudioTrack for low‑latency playback, with concrete… | ||
| Accessibility Is Something We Improve: The Ideal Society I Aim For from the Perspective of a Person with Visual Impairment | maverick | 31m |
A completely blind accessibility specialist describes practical successes and failures using assistive tech: screen readers (NVDA, Narrator, TalkBack) can read… | ||
| Finally OS-Level Per-App Language Settings Are Supported! | sobachanko | 23m |
Android 13 and AppCompat 1.6.0 alpha04 add OS-level per-app language support using android:localeConfig XML and the ACTION_APP_LOCALE_SETTINGS UI, plus new… | ||
| Jetpack Compose Performance Improvements Learned from Real Examples | Mori Atsushi | 24m |
This talk examines Jetpack Compose performance issues—especially during animations, scrolls, drags, and when using Lazy lists or mixing RecyclerView with… | ||
| All your Compose @Previews to screenshot tests without instrumentation | David Vávra | 23m |
Shows how to turn Compose @Preview methods into automated screenshot tests using Paparazzi (no emulator or instrumentation) and Airbnb Showcase to generate… | ||
| UI That Connects an Android App's Inside and Outside | Yuichi Araki | 24m |
Describes concrete Android UI migration steps: use Android 12’s SplashScreen APIs and Google’s SplashScreen library—call installSplashScreen(), use a splash… | ||
| Molecule: Using Compose for Presentation Logic | Chris Horner | 26m |
Molecule turns Compose’s compiler plugin into a presenter builder so presentation logic runs as Compose code but without Compose UI dependencies. It exposes… | ||
| Explaining the App Architecture Guide | Saryong Kang | 40m |
A guide to implementing Android app architecture, covering topics that Google's guide doesn’t emphasize (e.g., Clean Architecture), correct and anti-pattern… | ||
| Continuing to Work While Embracing All Changes — Caregiving and Studies Edition | micchie | 40m |
Covers how an engineering manager balanced three and a half years of caregiving and a full-time job by regularly flying between Tokyo and Sapporo, using… | ||
| Supporting Notification Channels | Miyabi Gouji | 28m |
A news app migrates its in-app notification settings to Android notification channels by creating channels identified as channelID + importance + description… | ||
| Strategies for Add-to-App | koji-1009 | 25m |
Explains using Flutter Add-to-App to embed Flutter UI/features into existing Android (Kotlin) and iOS (Swift) apps as an alternative to full native… | ||
| Anatomy of Dynamic Color | Rokunemu | 26m |
Dynamic Color extracts a scored source color from a wallpaper by quantizing thousands of colors, then generates five key colors and 13-tone tonal palettes to… | ||
| The Present and Future of Standardized Authentication Specifications You Can Experience on Android/Chrome | ritou | 38m |
Describes current and upcoming standardized authentication flows that run across Android and Chrome to reduce phishing and user friction. Covers WebOTP… | ||
| Teams Developing Android/iOS Apps Together — Scrum Practices and Beyond | Kuu, otao | 24m |
A mobile engineering team builds a single product in Kotlin (Android) and Swift (iOS) and describes concrete practices: shared design documents between Android… | ||
| Keeping Up Continuous Development of BLE-Based Apps | Moyuru | 25m |
Demonstrates wrapping callback-heavy Android BLE (dozens of callbacks) into Kotlin Coroutines and Flow so code matches the device protocol steps: connect… | ||
| Safely Migrating to DataStore in Production | Go Takahana | 26m |
How to migrate Android apps from SharedPreferences to Jetpack Preference DataStore: create a singleton DataStore (Hilt recommended), provide a repository… | ||
| How a Team Should Keep Up with Shifting De Facto Standards | tk-masuda | 25m |
Defines when a team should follow shifting de facto standards and presents a concrete migration path used at Oisix: re-model domain boundaries, extract… | ||
| How to Build a Healthcare App in 2022 | Kohei Yamamoto | 23m |
An Android mindfulness app calculates autonomic nervous system scores from the camera (HRV and heart rate), stores them on an app server, and writes heart-rate… | ||
| How to Build a Video Playback App in 2022 | oidy | 25m |
Covers building Android video playback apps in 2022 using Jetpack Media3 and ExoPlayer, explaining how the new unified Media3 library replaces separate media… | ||
| I Want Drag & Drop on Android Too! | m.coder | 24m |
Shows how to implement drag-and-drop on Android using RecyclerView's ItemTouchHelper by overriding onMove/onSwiped/onMoved, calling notifyItemMoved and… | ||
| Implementing Passport OCR with CameraX × ML Kit | Yuto Akaike | 23m |
Describes implementing passport OCR on Android using CameraX 1.1.0 preview image analysis together with ML Kit on‑device Latin text recognition to capture… | ||
| Lessons Learned Migrating the Maps SDK to Compose | Chris Arriola | 36m |
Maps Compose is an open source interop layer that replaces ~100+ lines of AndroidView boilerplate with composable nodes, using subcomposition and a custom… | ||
| The art of hiding sensitive info in plain sight | George Kortsaridis | 25m |
Decompiles an Android APK with APK Lab + jadx to show source, layouts, strings and a constants file that contains a hard-coded AWS secret key; the “encryption”… | ||
| Why Projects Succeed: Lessons Learned from the Android OS | Chet Haase, Romain Guy | 48m |
Project begins as a camera OS, pivots to phones after a July 2005 acquisition of eight people and a JavaScript demo, then rebuilds: adds a Linux kernel with a… | ||
| App Engineers and QA Team Tackle Improving Debugging Features! | Satoru Komai | 19m |
A joint app-engineer and QA improvement team ran a QA survey to score requested debug features by impact and development difficulty, then implemented… | ||
| How Engineers Led a Redesign of Our Design Tool | bami | 21m |
An engineering-led effort replaced Excel wireframes and duplicated Adobe XD files with Figma, using its web-based files, versioning, and comment threads to… | ||
| Practical edge-to-edge: A Complete Walkthrough | Yuki Ando | 21m |
Explains how LINE implemented edge-to-edge UIs by expanding app content into system bars using WindowCompat.setDecorFitsSystemWindows and WindowInsets… | ||
| Optimize your app for large screens | Chiko Shimizu | 40m |
Defines three support levels — Basic, Better, Best — and shows concrete breakpoints (600dp, compact/medium/expanded, 3x3 width/height grid) and practical APIs… | ||
| Kotlinize your CI, from Gradle tuning to Kotlin Script | Pierrick Greze | 26m |
Replaces scattered Ruby/Python/JS CI glue with Kotlin across three layers: custom Docker images that include a toolbox project (published to Docker Hub and… | ||
| Weaponizing the Audio Framework to Beamform with a 5ch Mic | Akira Kimura | 28m |
Describes modifying the Android Audio Framework on a Qualcomm device so a 5-microphone array produces a single-channel beamformed audio stream for apps… | ||
| nothing matches | ||