Android

Articles on Android performance, Kotlin optimization, Gradle builds, and building responsive Android apps.

942 Articles · 161 Companies · 43 Topics

Android engineering articles 721–750 of 942

Lyft Jan 21, 2020

Lyft's Journey Through Mobile Networking

Michael Rebello from Lyft reveals how they scaled from hand-written APIs to a unified networking architecture serving 500+ endpoints. The journey involved killing technical debt, slashing payload sizes by 50%, ...

Dropbox Jan 15, 2020

Store Grand Re-opening: Loading Android Data with Coroutines

Dropbox just took over Store, the popular Android data loading library, and rewrote it from scratch in Kotlin. The reason? RxJava was making it too easy for developers to leak memory.

Grab Dec 26, 2019

Journey to a Faster Everyday Super App

Grab cut app startup time by 60% while shipping dozens of new features. Here's how they did it without compromising velocity.

Grab Dec 26, 2019

Journey to a Faster Everyday Super App: Where Every Millisecond Counts

Grab reduced their super app's startup time by 60% while shipping dozens of new features. Here's how they saved users 59,582 hours per day.

Airbnb Dec 13, 2019

Better Android Testing at Airbnb (Part 4: Testing ViewModels)

Airbnb built a testing framework so elegant that their ViewModels tests read like plain English. Here's how they made testing actually enjoyable.

Thumbtack Dec 2, 2019

Targeted Code Coverage Reports For Android Continuous Builds

Brian Terczynski from Thumbtack reveals how their Android team solved a critical problem: developers couldn't see which specific lines in their code changes lacked test coverage. The solution? Two custom report...

Revolut Nov 29, 2019

Reactive Data Flow in Revolut Android App

Roman Iatcyna from Revolut reveals how they built a reactive data layer that handles offline-first architecture at scale. Their solution? A custom DataObservableDelegate that abstracts away the complexity of mu...

AWS Nov 21, 2019

Improving GraphQL API performance and consistency with AWS AppSync Caching and DynamoDB Transactions support

AWS just shipped two features that solve opposite problems: making GraphQL APIs blazing fast and keeping DynamoDB writes bulletproof. Here's how they change the game for mobile backends.

React Native Blog Nov 18, 2019

React Native Doctor Diagnostic Tool

How much time does your team waste debugging React Native environment setup? The React Native Community just shipped a solution that auto-fixes your dev environment issues.

Dropbox Oct 30, 2019

Modernizing Our Android Build System Part II: The Execution

Dropbox migrated 75 Android modules from a custom build system to Gradle without breaking their engineering team's workflow. Here's how they pulled it off.

Dropbox Oct 30, 2019

Modernizing Our Android Build System Part I: The Planning

Dropbox's Android build system was so painful that engineers 6+ months in still couldn't create new modules. Time for a rebuild.

Strava Oct 25, 2019

A Summer of Android at Strava

Artem Sharypov from Strava's Experience team rebuilt their entire Android upload service from scratch. Why throw away working code? Because sometimes technical debt costs more than a rewrite.

Netflix Oct 10, 2019

Building High-Performance Mobile Applications at Netflix

Netflix hosted their first mobile engineering event to tackle a problem every mobile team faces: building performant apps on resource-constrained devices.

React Native Blog Sep 18, 2019

React Native 0.61 Release

React Native's hot reloading was so broken that most developers just turned it off. The 0.61 release completely reimagined it from scratch.

Traveloka Sep 9, 2019

Dagger and Multi-Module Architecture in Traveloka Android App

Alifa Nurani Putri and Yusuf Cahyo Nugroho from Traveloka reveal how their single Dagger component ballooned to 17,705 lines of code across 25+ products. Their refactoring journey cut initialization time and bu...

Grindr Sep 7, 2019

OOM Bitmap Resource Analysis and Optimization

Ansgar Lin from Grindr Engineering found a single placeholder image consuming 8.3MB of memory at runtime. On devices with only 16-32MB Java heap, that's a recipe for constant crashes.

Callstack Sep 6, 2019

Integrating React Native into Existing Android Applications

Callstack explores how to add React Native to existing Android apps without a full rewrite. This brownfield approach lets teams ship cross-platform features while keeping their native codebase intact.

Slack Sep 1, 2019

A Day in the Life of a Mobile Product Engineer at Slack

Kevin, a Staff Engineer at Slack, shares how a distributed mobile team ships features across Vancouver and San Francisco without stepping on each other's toes. His secret? Strategic work separation and dogfoodi...

SoundCloud Aug 30, 2019

Gradle Remote Build Cache Optimization

Nelson Osacky from SoundCloud reveals how simply turning on Gradle's remote build cache got them almost zero cache hits. The real work was hunting down why.

Connected2.me Aug 26, 2019

Running Android Instrumentation Tests on Circle CI Without a Third Party Service

Doğu Deniz Uğur challenges CircleCI's own documentation. While the official docs say Android emulator tests aren't supported on their Linux VMs, he found a workaround that eliminates the need for Firebase Test ...

Dropbox Aug 14, 2019

The Not-So-Hidden Cost of Sharing Code Between iOS and Android

Eyal Guthmann from Dropbox shares a hard truth: writing code once in C++ cost them more than writing it twice in native languages. Here's why their cross-platform strategy backfired.

Pinterest Aug 5, 2019

Ad Metrics Quality And Testing On Mobile

Maya Reddy from Pinterest reveals how their team eliminated last-minute P1 bugs by automating ad metrics testing. The shift from bi-weekly manual QA to continuous integration transformed their release confidenc...

Thumbtack Aug 5, 2019

Transitioning to Android

Bianca Gandolfo spent 7 years mastering JavaScript—then faced an identity crisis when asked to switch to Android. Her internal debate reveals a tension every specialist faces: go deeper or go broader?

Uber Jul 25, 2019

Introducing Nanoscope: An Extremely Accurate Method Tracing Tool for Android Development

Uber's Android team hit a wall: their profiling tools were either too slow or too inaccurate to debug real performance issues.

Robinhood Jul 22, 2019

Android Inter-Module Navigation with Dagger

Robinhood's Android team cracked a tough modularization puzzle: how do you navigate between completely decoupled feature modules without creating dependencies?

React Native Blog Jul 17, 2019

Hermes JavaScript Engine for React Native

Facebook just open-sourced Hermes, a JavaScript engine built specifically for React Native on Android. This isn't just another optimization tweak. It's a ground-up rethink of how JS should run on mobile.

Grindr Jul 4, 2019

Handling WebP OutOfMemoryError in Android

Ansgar Lin from Grindr Engineering discovered their app was crashing with OutOfMemoryErrors, and the culprit wasn't bad code. It was a tiny WebP image causing massive runtime memory allocation.

React Native Blog Jul 3, 2019

React Native Version 0.60 Release

React Native 0.60 just dropped with changes so significant, they're calling it a migration milestone. If you're still manually linking native modules, this changes everything.

Cash App Jun 26, 2019

OkHttp 4 Goes Kotlin

Jesse Wilson from Square just rewrote 25,000 lines of Java code in Kotlin without changing a single feature or fixing a single bug. Here's why that matters for your Android app.

OLX Jun 24, 2019

Android Jetpack Benchmark: JSON Parser Performance

Mootaz Ltaief from OLX Engineering put four popular Android JSON parsers head-to-head using Jetpack Benchmark. The results reveal a brutal tradeoff: the fastest parser costs you 1.1 MB of app size.