Android

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

942 Articles · 161 Companies · 43 Topics

Android engineering articles 661–690 of 942

Farfetch Nov 3, 2020

Mobile App Launch Performance II

At Farfetch, a 0.1 second delay in warm app launch costs $4.2M annually. That's less time than it takes to blink.

Farfetch Nov 3, 2020

Mobile App Launch Performance

Gonçalo Alvarez from Farfetch drops a hard truth: 86% of users uninstall apps after one use due to poor performance. Your launch time might be costing you customers before they even see your product.

Lyft Oct 27, 2020

Decomposing network calls on the Lyft mobile apps

Lyft's mobile apps used to poll a single endpoint every 5 seconds for everything. That "Universal Object" became their biggest reliability nightmare.

Dropbox Oct 27, 2020

Our Counterintuitive Fix for Android Path Normalization

Dropbox Android users couldn't see folders with Cyrillic characters or certain special names. The obvious fix? Way too risky to attempt.

Pinterest Oct 20, 2020

Pre-submit UI Tests at Pinterest

Pinterest's UI test suite was failing more than 50% of the time. Engineers were drowning in false positives, and tests had lost all credibility.

Microsoft Oct 13, 2020

Improve Android App Screen Launch Times Using LazyLifecycle Callbacks

Microsoft Teams Android engineers faced a critical problem: heavy initialization code in lifecycle callbacks was killing app launch times. Their solution? Get lazy.

Flutter Sep 30, 2020

Learning Flutter's new navigation and routing system

John Ryan from Flutter's team tackles one of mobile dev's messiest problems: navigation. But the solution might be more complex than the problem itself.

Revolut Sep 29, 2020

Custom View from Scratch Part III: Performance and Optimisation

Eugene Zubkov from Revolut hit a wall building a custom Android chart: it literally disappeared due to texture size limits. His debugging journey reveals critical performance traps most Android devs don't see c...

GitHub Sep 23, 2020

GitHub Mobile and GraphQL

Hesham Salman from GitHub reveals how GraphQL eliminated over-fetching and let their mobile team ship features at warp speed. The secret? Letting the client define exactly what data it needs.

Uber Sep 18, 2020

New Rider App Architecture

Uber threw away years of code and rebuilt their rider app from scratch. Here's why that radical decision paid off.

Walmart Sep 15, 2020

5 Minute DevOps Effective Testing

Walmart's DevOps team has a bold claim: if you're not testing during development, you're risking the business. Here's why your testing strategy might be fundamentally broken.

Netflix Sep 8, 2020

Seamlessly Swapping the API backend of the Netflix Android app

Netflix Android engineers migrated 170 API endpoints from a monolith to a new microservice without users noticing. Here's how they pulled it off over a year.

Airbnb Sep 8, 2020

Motion Engineering at Scale

Airbnb was shipping hundreds of features, but custom animations were getting cut due to complexity. Their solution? A declarative framework that reduced transition code from hundreds of lines to just a few.

Google Sep 2, 2020

Data Storage Best Practices with Jetpack

Florina Muntenescu and Rohit Sathyanarayana from Google reveal why SharedPreferences has been secretly blocking your UI thread and causing ANRs. Their solution? Jetpack DataStore, a complete reimagining of Andr...

Google Sep 1, 2020

Android GPU Inspector: Open Beta Release

Jay Kong from Google's Gaming and Graphics team just opened the beta for Android GPU Inspector, and early results are impressive. Diablo Immortal cut vertex bandwidth by 45%, while Crash Bandicoot slashed frame...

OkCupid Aug 28, 2020

Improved Localization with Custom TextView Effects

Anton Begeima from OkCupid's engineering team turned a localization nightmare into an elegant solution. Instead of managing separate images for every language, his team built a custom TextView that handles text...

Slack Aug 28, 2020

Tracing at Slack: Thinking in Causal Graphs

Slack processes 8.5 billion spans daily, but their tracing system looks nothing like traditional distributed tracing. Here's why they rebuilt it from scratch.

Microsoft Aug 18, 2020

Clean Android WebView Caching

Microsoft Teams Android engineers cut WebView initialization time by 70% using a clever caching technique. Here's how they avoided memory leaks while sharing WebViews across activities.

Tokopedia Aug 14, 2020

Migrating Tokopedia Academy App From Dagger Android Into Hilt!

Yehezkiel L from Tokopedia cut their dependency injection boilerplate dramatically by migrating from Dagger Android to Hilt. The result? Cleaner code, faster onboarding, and way less confusion for their team.

DoorDash Aug 4, 2020

Implementing the Android Navigation Library

Maria Sharkina from DoorDash discovered that Android's Navigation Library has a critical flaw: it forces navigation before your app is ready. Here's how her team solved it without breaking deep links or the bac...

Badoo Jul 30, 2020

Using Gradle Composite Builds as a BuildSrc Replacement

Yury from Bumble Tech tackles a painful Gradle problem: buildSrc invalidates your entire build cache with every change. Here's how composite builds solve it without sacrificing IDE support.

OkCupid Jul 27, 2020

Improve Android Testability with Fakes and Factories

Brian Plummer from OkCupid hit a wall adding a simple analytics event: his unit tests broke because static constructs were calling the analytics library directly. Here's how he fixed it with a pattern that made...

Snapchat Jul 27, 2020

Shipping Two Apps In One Android

Snapchat shipped two complete Android apps in a single APK to A/B test their rewrite. The engineering challenge? Android wasn't designed to support this at all.

Spotify Jul 22, 2020

Leveraging Mobile Infrastructure with Data-Driven Decisions

Spotify's mobile infrastructure team turned build time chaos into predictable performance. Their secret? Making every engineer a data scientist.

React Native Blog Jul 17, 2020

React Native Core Principles and Best Practices

The React Native team at Facebook just pulled back the curtain on how they decide what to build next. Spoiler: cross-platform consistency isn't their top priority.

Farfetch Jul 16, 2020

App Size Matters II

What if I told you a single 15MB increase in your app size could cost your business $1M annually? Farfetch's mobile team did the math, and the numbers are eye-opening.

Farfetch Jul 16, 2020

App Size Matters I

Gonçalo Alvarez from Farfetch drops a hard truth: your bloated app is costing you users, installs, and market share. Here's why app size is a business problem, not just an engineering one.

Dropbox Jul 15, 2020

How We Ensure Credible Analytics on Dropbox Mobile Apps

Marianna Budnikova from Dropbox reveals why your mobile analytics are probably lying to you. And it's costing you two weeks every time you get it wrong.

Google Play Jul 14, 2020

Optimizing Notifications in Games

Google Play analyzed platform-wide notification data across all games and found something surprising: more notifications actually hurt retention.

Bukalapak Jul 9, 2020

Managing App Size for Super Apps

Hendro Riyadi from Bukalapak reveals how his team slashed their super app size by 35% while shipping new features in parallel. In emerging markets where users have limited data plans and older devices, this was...