Tagged articles
1817 articles
Page 8 of 19
NetEase Smart Enterprise Tech+
NetEase Smart Enterprise Tech+
Jan 5, 2022 · Mobile Development

How Android’s Video Device Manager Powers WebRTC: Architecture and Optimization

This article explains Android’s Video Device Manager (VDM) within WebRTC, covering the graphics system, Surface/BufferQueue model, capture, encoding, rendering pipelines, cross‑platform implementation layers, and compatibility optimizations, providing developers with a comprehensive view of Android video handling in real‑time communication.

AndroidMediaCodecSurfaceFlinger
0 likes · 14 min read
How Android’s Video Device Manager Powers WebRTC: Architecture and Optimization
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Dec 31, 2021 · Information Security

Design and Implementation of the Android Scudo Hardened Allocator

The Android Scudo hardened allocator, introduced in Android R to replace jemalloc, uses a primary region‑based allocator, a secondary mmap‑backed allocator, thread‑specific caches, and a quarantine system with 64‑bit chunk headers and extensive safety checks, offering a balanced security‑performance trade‑off configurable via compile‑time, environment, and mallopt options.

AndroidChunk HeaderMemory Allocator
0 likes · 17 min read
Design and Implementation of the Android Scudo Hardened Allocator
Coolpad Technology Team
Coolpad Technology Team
Dec 28, 2021 · Mobile Development

Introducing RheaTrace: An Enhanced Android Performance Tracing Tool

RheaTrace, an open‑source high‑performance tracing tool developed by ByteDance, extends Systrace by adding detailed I/O data, method‑level timing, and improved efficiency, offering Android developers a more comprehensive way to capture and analyze performance issues despite some setup complexities and platform limitations.

AndroidMobile DevelopmentRheaTrace
0 likes · 5 min read
Introducing RheaTrace: An Enhanced Android Performance Tracing Tool
ByteDance Terminal Technology
ByteDance Terminal Technology
Dec 28, 2021 · Mobile Development

Analyzing Gradle’s Scheduling Mechanism to Optimize Android Component Publishing

This article investigates why large Android projects experience extremely slow AAR publishing, reveals that memory is not the main bottleneck, examines Gradle’s core scheduling, Worker API, lock contention, and measurement inaccuracies, and proposes disabling Worker API to achieve up to fifteen‑fold build speed improvements.

AndroidBuild PerformanceGradle
0 likes · 20 min read
Analyzing Gradle’s Scheduling Mechanism to Optimize Android Component Publishing
Alibaba Cloud Developer
Alibaba Cloud Developer
Dec 27, 2021 · Mobile Development

How to Dynamically Configure mPaaS for Multiple Android Build Variants

This article explains how to dynamically configure mPaaS for Android projects with multiple build variants by using Gradle scripts to switch .config files based on the current flavor, including code snippets for deleting old configs, copying new ones, and retrieving flavor and applicationId information.

AndroidBuild VariantsGradle
0 likes · 6 min read
How to Dynamically Configure mPaaS for Multiple Android Build Variants
DeWu Technology
DeWu Technology
Dec 23, 2021 · Mobile Development

AirForce Component Management and Release Platform Overview

The AirForce platform unifies component architecture, baseline and release management, and automated packaging for a large Android app, eliminating information silos and cumbersome configuration files by enforcing hierarchical dependencies, tracking component metadata, providing fine‑grained conflict detection, and enabling shuttle releases that streamline coordination, improve traceability, and reduce manual effort.

AndroidBaseline ManagementBuild Automation
0 likes · 12 min read
AirForce Component Management and Release Platform Overview
Baidu App Technology
Baidu App Technology
Dec 23, 2021 · Mobile Development

Optimizing Android Video Playback: When to Use Soft vs. Hardware Decoding

This article analyzes the trade‑offs between software and hardware video decoding on Android, presents performance measurements for different MediaCodec modes, identifies compatibility and latency challenges, and proposes a decoder‑monitoring system and seamless switch architecture to maximize playback efficiency.

AndroidMediaCodecMobile Development
0 likes · 12 min read
Optimizing Android Video Playback: When to Use Soft vs. Hardware Decoding
Sohu Tech Products
Sohu Tech Products
Dec 22, 2021 · Mobile Development

In-depth Source Code Investigation of FLAG_ACTIVITY_NEW_TASK Causing Activity Launch Failure

This article analyzes why adding the FLAG_ACTIVITY_NEW_TASK flag can prevent an Android Activity from starting, examines the underlying framework source code—including startActivityInner, getReusableTask, recycleTask, and complyActivityFlags—and provides practical solutions to resolve the launch failure.

ActivityAndroidFLAG_ACTIVITY_NEW_TASK
0 likes · 18 min read
In-depth Source Code Investigation of FLAG_ACTIVITY_NEW_TASK Causing Activity Launch Failure
Sohu Tech Products
Sohu Tech Products
Dec 22, 2021 · Fundamentals

Introduction to Gradle and Android Gradle Plugin: Build System Basics

This article introduces the fundamentals of Gradle as a universal build automation tool and explains how the Android Gradle Plugin integrates with it, covering project structure, build files, tasks, the three build lifecycle phases, DSL syntax, and provides example Groovy/Kotlin scripts for configuring Android applications.

AGPAndroidBuild System
0 likes · 8 min read
Introduction to Gradle and Android Gradle Plugin: Build System Basics
vivo Internet Technology
vivo Internet Technology
Dec 22, 2021 · Frontend Development

In-Depth Analysis of Chrome DevTools Architecture, Protocols, and Performance Tools

The article offers a thorough technical examination of Chrome DevTools’s client‑server architecture, the JSON‑based Chrome DevTools Protocol, and performance tooling within Android Chromium 87, guiding front‑end developers and engineers through its history, core implementation, code examples, JavaScript evaluation, performance diagnostics, and broader ecosystem impact.

AndroidCDPChrome DevTools
0 likes · 27 min read
In-Depth Analysis of Chrome DevTools Architecture, Protocols, and Performance Tools
DeWu Technology
DeWu Technology
Dec 22, 2021 · Mobile Development

AirForce Component Management and Release Platform Overview

AirForce is a platform that centralizes Android component management and release processes by enforcing layered dependencies, tracking baselines with public and private states, detecting conflicts via component version numbers, automating build and packaging through a plugin that validates API changes, and notifying stakeholders, thereby improving stability and efficiency.

AndroidBaseline ManagementComponentization
0 likes · 11 min read
AirForce Component Management and Release Platform Overview
Airbnb Technology Team
Airbnb Technology Team
Dec 22, 2021 · Mobile Development

Automated Unit Testing Framework for Android ViewModel (Part 4)

Part 4 of Airbnb’s Android testing series presents a dedicated framework that lets developers write concise, single‑function unit tests for ViewModel classes by specifying initial state, parameters, and expected state or dependency calls through a Kotlin DSL, integrating with JUnit, Robolectric, Mockito, and offering scaffolding and IntelliJ plugins for streamlined, systematic ViewModel logic verification.

AndroidDSLKotlin
0 likes · 12 min read
Automated Unit Testing Framework for Android ViewModel (Part 4)
Laravel Tech Community
Laravel Tech Community
Dec 20, 2021 · Mobile Development

One‑Click Mobile Number Login and Verification Services from China Mobile, China Telecom, and China Unicom

The article provides a detailed overview of one‑click mobile number login and verification services offered by China Mobile, China Telecom, and China Unicom, describing their SDK capabilities, network requirements, caching mechanisms, and typical use cases for mobile and web applications.

AndroidMobile AuthenticationSDK
0 likes · 10 min read
One‑Click Mobile Number Login and Verification Services from China Mobile, China Telecom, and China Unicom
Alibaba Terminal Technology
Alibaba Terminal Technology
Dec 20, 2021 · Mobile Development

How Youku Cut Android Build Times by Up to 35 Minutes: A Deep Dive

Facing build times of up to 35 minutes for Android release packages, Youku’s engineering team applied data‑driven metrics, software and hardware optimizations—including Atlas removal, Gradle and AGP upgrades, DX tuning, redundant task cleanup, and pipeline redesign—cutting debug builds by minutes and release builds by tens of seconds.

AndroidGradleperformance
0 likes · 12 min read
How Youku Cut Android Build Times by Up to 35 Minutes: A Deep Dive
Programmer DD
Programmer DD
Dec 18, 2021 · Mobile Development

Can Windows 11 Run on Android Phones? Inside the Renegade Project

Developers have managed to boot Windows 11 on Android smartphones, Raspberry Pi 4, and even a legacy Lumia device, revealing both the technical breakthroughs and the remaining limitations such as missing phone functions and reliance on custom UEFI ports.

ARMAndroidMobile Development
0 likes · 6 min read
Can Windows 11 Run on Android Phones? Inside the Renegade Project
Java Architect Essentials
Java Architect Essentials
Dec 17, 2021 · Mobile Development

One-Click Mobile Number Login and Verification Services from China Mobile, China Telecom, and China Unicom

The article explains how China Mobile, China Telecom, and China Unicom provide one‑click mobile number login and verification services, detailing SDK capabilities, required network conditions, token acquisition methods, and security considerations for iOS, Android, H5, and mini‑program integrations.

AndroidAuthenticationSDK
0 likes · 12 min read
One-Click Mobile Number Login and Verification Services from China Mobile, China Telecom, and China Unicom
MaGe Linux Operations
MaGe Linux Operations
Dec 17, 2021 · Mobile Development

Speed Up Android Channel Packaging with Walle: A Quick Guide

This article introduces Walle, a fast Android channel‑packaging tool for the APK Signature V2 Scheme, explains how to configure it in Gradle, shows key properties and variables, and provides Gradle commands to generate single or multiple channel APKs efficiently.

APK Signature V2AndroidChannel Packaging
0 likes · 5 min read
Speed Up Android Channel Packaging with Walle: A Quick Guide
ByteDance Terminal Technology
ByteDance Terminal Technology
Dec 17, 2021 · Mobile Development

Solving Android Plugin Resource ID Conflicts with a No‑Resource‑Fixation Approach

This article explains the problem of resource ID mismatches when Android plugins use host resources, reviews existing resource‑fixation solutions, and presents a novel “no‑resource‑fixation” method that dynamically maps host IDs at compile‑time and runtime to keep plugins stable across host updates.

AAPT2AndroidDynamic Loading
0 likes · 26 min read
Solving Android Plugin Resource ID Conflicts with a No‑Resource‑Fixation Approach
ByteDance SE Lab
ByteDance SE Lab
Dec 17, 2021 · Mobile Development

Douyin's Metric‑Driven Optimization: Boosting Creation Experience and Performance

This article details Douyin's systematic approach to improving creation experience by defining measurable goals, building a comprehensive metric system, performing relevance analysis, and implementing concrete Android and iOS performance optimizations—including album loading, component architecture, and small‑screen video quality—while outlining monitoring, tooling, and internal platform support that together deliver significant user‑facing gains.

AndroidMetricsiOS
0 likes · 24 min read
Douyin's Metric‑Driven Optimization: Boosting Creation Experience and Performance
Laravel Tech Community
Laravel Tech Community
Dec 16, 2021 · Mobile Development

Programming Languages for Mobile Apps: Native and Cross‑Platform Options

This article explains the programming languages used for Android and iOS apps, compares native languages such as Java, Kotlin, Swift, and Objective‑C with cross‑platform solutions like Flutter (Dart) and uni‑app (Vue.js), and summarizes the typical language stacks for large‑scale mobile applications.

AndroidFlutterMobile Development
0 likes · 5 min read
Programming Languages for Mobile Apps: Native and Cross‑Platform Options
Sohu Tech Products
Sohu Tech Products
Dec 15, 2021 · Mobile Development

Implementing a Naked‑Eye 3D Effect on Android with OpenGL

This article explains how to create a naked‑eye 3D visual effect in an Android app by splitting an image into three layers, using OpenGL for GPU‑accelerated rendering, registering device sensors to track rotation, applying matrix transformations, and smoothing sensor noise with a low‑pass filter.

3DAndroidMobile Development
0 likes · 14 min read
Implementing a Naked‑Eye 3D Effect on Android with OpenGL
Sohu Tech Products
Sohu Tech Products
Dec 8, 2021 · Mobile Development

Understanding Android App Routing: Concepts, Requirements, and Implementation

This article explains the concept of routing in Android applications, discusses why third‑party routing frameworks are often needed for large, componentized apps, outlines the essential features of a routing framework, and details the implementation techniques such as annotation processing, AOP injection, and service routing with concrete code examples.

ARouterAndroidAnnotation Processing
0 likes · 14 min read
Understanding Android App Routing: Concepts, Requirements, and Implementation
NetEase Smart Enterprise Tech+
NetEase Smart Enterprise Tech+
Dec 8, 2021 · Mobile Development

How to Accurately Measure Real‑Time Audio/Video Performance on Mobile Devices

This article explains why traditional CPU usage metrics are unreliable for real‑time audio/video apps, introduces essential performance indicators, reviews native and third‑party analysis tools for iOS and Android, and proposes power‑consumption‑based evaluation methods with practical testing guidelines.

AndroidMobilePerformance Testing
0 likes · 15 min read
How to Accurately Measure Real‑Time Audio/Video Performance on Mobile Devices
BaiPing Technology
BaiPing Technology
Dec 6, 2021 · Mobile Development

Master Kotlin Coroutines: Simplify Async Code in Android

This article provides a comprehensive introduction to Kotlin Coroutines, covering their history, core concepts like CoroutineContext, Dispatchers, Job, Deferred, and suspend functions, and demonstrates practical Android usage with code examples for launching coroutines, handling concurrency, networking, Room database operations, timeouts, exception handling, and Flow-based timers.

AndroidCoroutinesFlow
0 likes · 21 min read
Master Kotlin Coroutines: Simplify Async Code in Android
Sohu Tech Products
Sohu Tech Products
Dec 1, 2021 · Mobile Development

Understanding Android Architecture: From MVC/MVP/MVVM to MVI

This article reviews classic Android architectural patterns—MVC, MVP, and MVVM—highlights their limitations, introduces the MVI pattern as a more streamlined alternative, and provides a detailed Kotlin implementation with ViewState, ViewEvent, and unidirectional data flow examples.

AndroidKotlinMVI
0 likes · 11 min read
Understanding Android Architecture: From MVC/MVP/MVVM to MVI
Sohu Tech Products
Sohu Tech Products
Dec 1, 2021 · Mobile Development

Understanding HEIF Image Format and Its Implementation on Android

HEIF (High Efficiency Image File Format) offers superior compression, support for image sequences, depth and transparency, and is natively supported on iOS and Android P, with implementation options via ImageDecoder, BitmapFactory, or conversion to JPEG, though adoption faces compatibility and hardware licensing challenges.

AndroidHEIFHEVC
0 likes · 8 min read
Understanding HEIF Image Format and Its Implementation on Android
vivo Internet Technology
vivo Internet Technology
Dec 1, 2021 · Mobile Development

Bytecode and Reference Detection for Android Apps: Principles, Implementation, and Gradle Plugin

The article explains how bytecode‑level reference detection—implemented via a custom Gradle plugin that uses JavaAssist or ASM to scan compiled .class files for missing or inaccessible methods, fields, and classes—can automatically catch runtime‑crash‑inducing errors in large modular Android projects, offering configurable strict or warning modes to enhance build safety.

AndroidGradle PluginJavaassist
0 likes · 18 min read
Bytecode and Reference Detection for Android Apps: Principles, Implementation, and Gradle Plugin
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 26, 2021 · Information Security

Memory Tagging Extension (MTE): Overview, Principles, and Usage in Android and Linux Kernel

Memory Tagging Extension (MTE), introduced in ARM v8.5, tags memory with 4‑bit keys and checks them in hardware via synchronous or asynchronous modes, providing low‑overhead detection of use‑after‑free, overflow and underflow bugs in Android (since 12) and Linux kernels, complementing tools like ASan and KASAN despite a 16‑byte granularity limitation.

ARMAndroidMTE
0 likes · 10 min read
Memory Tagging Extension (MTE): Overview, Principles, and Usage in Android and Linux Kernel
Airbnb Technology Team
Airbnb Technology Team
Nov 25, 2021 · Mobile Development

How Airbnb Automates Android Interaction Testing with JSON Diff

Airbnb’s Android team built an automated interaction testing system that traverses view hierarchies, records click actions and resulting state changes into JSON snapshots, enabling diff-based verification of UI behavior without writing traditional Espresso tests, and integrates with Happo for CI reporting.

AndroidAutomated TestingEspresso
0 likes · 18 min read
How Airbnb Automates Android Interaction Testing with JSON Diff
21CTO
21CTO
Nov 21, 2021 · Frontend Development

What’s New in TypeScript 4.5 and Is Google’s Fuchsia the End of Android 12?

The article outlines Microsoft’s TypeScript 4.5 release with its new type‑system features and performance fixes, then shifts to Google’s unveiling of the Fuchsia OS, its microkernel architecture, and growing speculation that Android 12 could be the final Android update.

AndroidFuchsiaGoogle
0 likes · 4 min read
What’s New in TypeScript 4.5 and Is Google’s Fuchsia the End of Android 12?
OPPO Amber Lab
OPPO Amber Lab
Nov 19, 2021 · Information Security

How Android 11’s New Features Opened Up Three Critical Security Holes

This article examines three Android 11 security vulnerabilities—CVE‑2021‑0485’s picture‑in‑picture resizing flaw, CVE‑2021‑0521’s unprotected package‑visibility API, and CVE‑2021‑0645’s storage‑access bypass—detailing their causes, code examples, and the patches Google released to mitigate them in practice.

AndroidAndroid 11CVE
0 likes · 7 min read
How Android 11’s New Features Opened Up Three Critical Security Holes
Yuewen Technology
Yuewen Technology
Nov 19, 2021 · Mobile Development

How Shadow Plugin Framework Shrinks Android APKs and Enables Dynamic Modules

This article explains the motivation behind adopting the Shadow plugin architecture for QQ Reading, compares modular and plugin approaches, details class‑loader mechanisms, walks through Shadow's core components and loading flow, and shares practical usage tips and lessons learned.

APK size reductionAndroidDynamic Modules
0 likes · 18 min read
How Shadow Plugin Framework Shrinks Android APKs and Enables Dynamic Modules
ByteDance Dali Intelligent Technology Team
ByteDance Dali Intelligent Technology Team
Nov 19, 2021 · Mobile Development

Using Kotlin Flow and Channel to Solve Android Development Pain Points and Implement an MVI Architecture

This article demonstrates how Kotlin Flow and Channel can address common Android development challenges such as ViewModel‑View communication and event handling, compares alternatives like LiveData and RxJava, and presents a practical MVI architecture implementation with code examples.

AndroidChannelCoroutines
0 likes · 24 min read
Using Kotlin Flow and Channel to Solve Android Development Pain Points and Implement an MVI Architecture
Alibaba Terminal Technology
Alibaba Terminal Technology
Nov 19, 2021 · Mobile Development

How to Achieve Instant Short‑Video Playback on Android: Multi‑Player & Pre‑Download Strategies

This article explains how to optimize Android short‑video playback for instant start by analyzing problems such as cover‑screen flash and slow streaming, then presents a three‑player RecyclerView solution, pre‑download techniques, cache integration, and future improvements to deliver a seamless, TikTok‑like experience.

AndroidRecyclerViewmulti-player
0 likes · 11 min read
How to Achieve Instant Short‑Video Playback on Android: Multi‑Player & Pre‑Download Strategies
Sohu Tech Products
Sohu Tech Products
Nov 17, 2021 · Mobile Development

Implementing a Carousel with MotionLayout in Android

This tutorial explains how to create a smooth, animated carousel in Android using MotionLayout and its Carousel helper, covering core concepts, state definitions, XML layout and MotionScene configurations, Kotlin adapter implementation, and practical tips for handling view ordering and visual effects.

AndroidCarouselConstraintLayout
0 likes · 14 min read
Implementing a Carousel with MotionLayout in Android
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 16, 2021 · Mobile Development

Highlights from the Google Developer Summit: Android 12, Flutter, TensorFlow, ARCore, and Web Updates

The online Google Developer Summit in China covered Android 12's UI, performance, and privacy improvements, Flutter's cross‑platform dominance, TensorFlow use cases, ARCore enhancements, WebAssembly and PWA advances, and Play's new Data Safety requirements, providing a concise technical recap for developers.

AndroidGoogle Developer SummitMobile Development
0 likes · 6 min read
Highlights from the Google Developer Summit: Android 12, Flutter, TensorFlow, ARCore, and Web Updates
NetEase Smart Enterprise Tech+
NetEase Smart Enterprise Tech+
Nov 16, 2021 · Mobile Development

Integrating Faceunity Beauty SDK with NERtc on Android and iOS

This guide explains the core concepts, integration steps, and troubleshooting tips for using the Faceunity (相芯) Beauty SDK with NetEase NERtc on Android and iOS, covering OpenGL ES basics, EGL/EAGL interfaces, three rendering schemes, resource management, and platform‑specific setup.

AndroidMobile DevelopmentNERtc
0 likes · 13 min read
Integrating Faceunity Beauty SDK with NERtc on Android and iOS
Sohu Tech Products
Sohu Tech Products
Nov 10, 2021 · Mobile Development

Adding KSP Support to Android Room: Challenges, Design Decisions, and Implementation

This article details how the Android Room library added experimental Kotlin Symbol Processing (KSP) support to replace KAPT, describing the performance benefits, the architectural challenges of creating an X‑Processing abstraction layer, the testing infrastructure built around it, and the remaining limitations and future work.

AndroidAnnotation ProcessingKSP
0 likes · 15 min read
Adding KSP Support to Android Room: Challenges, Design Decisions, and Implementation
Tencent Music Tech Team
Tencent Music Tech Team
Nov 10, 2021 · Mobile Development

Android Routing Management: Activity, Fragment, and Hybrid Page Navigation

Android routing management separates native navigation—using Activity launch modes, the ActivityManagerService task stack, intents, and the Navigation component for fragments—from hybrid navigation, where Activities host WebView, Weex/React‑Native, or Flutter pages and communicate via intents, bridges, or platform channels to achieve flexible page routing.

ActivityAndroidFragment
0 likes · 13 min read
Android Routing Management: Activity, Fragment, and Hybrid Page Navigation
The Dominant Programmer
The Dominant Programmer
Nov 8, 2021 · Mobile Development

Read NFC Tag ID on Android to Use as Unique User Identifier

The article explains how to read an NFC card’s UID on Android, use it as a unique user identifier for login verification, and walks through required permissions, setting the activity launch mode to singleTop, designing the UI layout, handling NFC intents, converting the UID to a hex string, and debugging the implementation.

AndroidForeground DispatchIntent
0 likes · 8 min read
Read NFC Tag ID on Android to Use as Unique User Identifier
Alibaba Terminal Technology
Alibaba Terminal Technology
Nov 8, 2021 · Mobile Development

How Youku Reduced App Size and Crashes When Embedding Alipay Mini‑Program SDK

This article explains how Youku tackled the large package size, thread‑explosion, and memory overhead introduced by integrating the Alipay mini‑program framework, using remote .so loading, layered dependency management, a unified thread pool, and lazy initialization to improve performance and stability.

AndroidAppOptimizationLazyLoading
0 likes · 10 min read
How Youku Reduced App Size and Crashes When Embedding Alipay Mini‑Program SDK
Coolpad Technology Team
Coolpad Technology Team
Nov 6, 2021 · Mobile Development

Analysis of Intermittent Unresponsive Touch Events in Feishu Caused by Process D State and Memory Compression

The article investigates why the Feishu app sometimes fails to respond to swipe gestures after a hot start, tracing the issue to the app entering a D (uninterruptible) state during memory compression, and demonstrates how adjusting CPU priority for compression threads can reduce the problem's occurrence.

AndroidInput EventsProcess D State
0 likes · 8 min read
Analysis of Intermittent Unresponsive Touch Events in Feishu Caused by Process D State and Memory Compression
Airbnb Technology Team
Airbnb Technology Team
Nov 4, 2021 · Mobile Development

Automated Screenshot Testing for Android Fragments Using MvRx and Happo

This article explains how Airbnb’s Android team extends its MvRx state‑simulation framework with a custom screenshot library and Happo integration to automatically capture, upload, and compare fragment UI snapshots in CI, detecting visual regressions, layout issues, crashes and memory leaks across commits.

AndroidCIHappo
0 likes · 11 min read
Automated Screenshot Testing for Android Fragments Using MvRx and Happo
ByteDance Dali Intelligent Technology Team
ByteDance Dali Intelligent Technology Team
Nov 3, 2021 · Backend Development

How We Slashed Android Gradle Sync Time from 8 Minutes to 1.5 Minutes

Facing 8‑minute Gradle syncs, frequent GC‑over‑limit errors, and excessive memory usage, the team diagnosed severe memory leaks in Android build configurations, applied variantFilter filtering, tuned JVM arguments, and optimized daemon settings, ultimately reducing sync time to 1.5 minutes and cutting CI build time in half.

AndroidBuild OptimizationGradle
0 likes · 15 min read
How We Slashed Android Gradle Sync Time from 8 Minutes to 1.5 Minutes
Snowball Engineer Team
Snowball Engineer Team
Oct 28, 2021 · Mobile Development

Redesigning Snowball's Android Network Framework with OkHttp and Retrofit: Architecture, Issues, and Migration

This article details the redesign of Snowball's Android network framework using OkHttp and Retrofit, covering motivations, architectural layers, solutions for domain switching, custom annotations, data validation, migration strategy, and the resulting performance and maintainability improvements.

AndroidKotlinOkHttp
0 likes · 17 min read
Redesigning Snowball's Android Network Framework with OkHttp and Retrofit: Architecture, Issues, and Migration
ByteDance Terminal Technology
ByteDance Terminal Technology
Oct 28, 2021 · Mobile Development

MemCorruption Tool for Detecting Memory Corruption Issues in Android Apps

The MemCorruption tool, developed by ByteDance's AppHealth team, provides an online, low‑overhead solution for detecting Use‑After‑Free, Double‑Free, and Heap‑Buffer‑Overflow problems in Android applications by hooking memory allocation functions, sampling allocations, and performing invisible SIGSEGV‑based detection.

AndroidHookNative Debugging
0 likes · 12 min read
MemCorruption Tool for Detecting Memory Corruption Issues in Android Apps
Coolpad Technology Team
Coolpad Technology Team
Oct 26, 2021 · Mobile Development

Understanding ART Garbage Collection in Android: Fundamentals, Mechanisms, and Performance Optimizations

This article introduces the fundamentals of Android Runtime (ART) garbage collection, covering its historical background, key milestones, core features such as RegionTLAB, read barriers, pause behavior, generational support, target heap size calculations, multiplier impact, GC trigger thresholds, Systrace analysis, and parameter tuning strategies.

ARTAndroidGarbage Collection
0 likes · 23 min read
Understanding ART Garbage Collection in Android: Fundamentals, Mechanisms, and Performance Optimizations
Yang Money Pot Technology Team
Yang Money Pot Technology Team
Oct 26, 2021 · Mobile Development

Encapsulating Retrofit with Kotlin Coroutines in Android: Two Approaches

This article explains how to combine Retrofit with Kotlin coroutines on Android, compares the traditional RxJava method with coroutine-based implementations, and presents two encapsulation techniques—using a DSL and leveraging CoroutineExceptionHandler—to simplify asynchronous network calls and centralize error handling.

AndroidCoroutinesDSL
0 likes · 14 min read
Encapsulating Retrofit with Kotlin Coroutines in Android: Two Approaches
Sohu Tech Products
Sohu Tech Products
Oct 20, 2021 · Mobile Development

Kotlin Network Request Wrappers with LiveData: Two Approaches, Code Samples, and Comparison

This article explains two Kotlin‑based network request wrappers for Android that reduce boilerplate by using LiveData, Retrofit, OkHttp and coroutines, compares their design trade‑offs, provides complete Activity, ViewModel, Repository and BaseRepository code samples, and shows how to handle loading, success, error and multiple data sources in a clean MVVM architecture.

AndroidCoroutinesKotlin
0 likes · 10 min read
Kotlin Network Request Wrappers with LiveData: Two Approaches, Code Samples, and Comparison
Sohu Tech Products
Sohu Tech Products
Oct 20, 2021 · Information Security

Overview of Android App Hardening and Unpacking Techniques Across Generations

This article provides a comprehensive overview of Android app hardening methods, detailing the evolution from first‑generation dex and so protection to advanced code virtualization, and outlines various unpacking (脱壳) techniques—including memory dump, dynamic debugging, hook‑based and custom ROM approaches—used to bypass these protections.

AndroidDEXFrida
0 likes · 11 min read
Overview of Android App Hardening and Unpacking Techniques Across Generations
vivo Internet Technology
vivo Internet Technology
Oct 20, 2021 · Mobile Development

Understanding AAPT2: Android Resource Compilation and the FLAT File Format

AAPT2, the default Android resource compiler, splits resource processing into compile and link stages, converting XML, PNG, and other files into binary FLAT containers that embed both raw data and metadata, enabling incremental builds, configurable options, and efficient merging into the final APK’s resources.arsc and R.java.

AAPT2AndroidIncremental Build
0 likes · 25 min read
Understanding AAPT2: Android Resource Compilation and the FLAT File Format
ByteDance Dali Intelligent Technology Team
ByteDance Dali Intelligent Technology Team
Oct 20, 2021 · Mobile Development

Bypassing Android dex2oat Restrictions for targetSdkVersion ≥ 29: Analysis and Implementation

This article investigates the Android dex2oat compilation restrictions introduced for targetSdkVersion ≥ 29, analyzes their impact on app performance, explores SELinux enforcement, and presents a practical solution using system commands and binder calls to trigger dex2oat compilation for both primary and secondary APKs, improving load and runtime speed.

APKAndroidCompilation
0 likes · 19 min read
Bypassing Android dex2oat Restrictions for targetSdkVersion ≥ 29: Analysis and Implementation
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Oct 15, 2021 · Operations

OverlayFS: Mounting, File Operations, and Android Use Cases

OverlayFS is a stacking file system that merges lower and upper directories into a single view using mount options like lowerdir, upperdir, and workdir, supports copy‑up, whiteouts, opaque directories and configurable rename handling, and is employed in Android, OpenWRT, and container platforms to provide writable overlays on read‑only layers.

AndroidContainerFilesystem
0 likes · 8 min read
OverlayFS: Mounting, File Operations, and Android Use Cases
Java Architect Essentials
Java Architect Essentials
Oct 14, 2021 · Backend Development

Analysis of Alipay Android Wallet System Architecture and MetaQ Distributed Messaging Middleware

This article presents a detailed overview of Alipay's Android wallet system architecture, illustrating its core components such as settlement, customer service, fund processing, and accounting, and further examines the open‑source MetaQ (Metamorphosis) distributed messaging middleware, highlighting its features, advantages over Kafka, and suitable application scenarios.

AlipayAndroidBackend
0 likes · 5 min read
Analysis of Alipay Android Wallet System Architecture and MetaQ Distributed Messaging Middleware
Sohu Tech Products
Sohu Tech Products
Oct 14, 2021 · Mobile Development

Advanced Android 12 Widget Features: Reconfigurable Widgets, Default Configurations, Size Limits, and New APIs

This article explains how Android 12 introduces reconfigurable widgets, default configuration flags, new size attributes, responsive layouts, compound button interactions, and simplified collection RemoteViews, providing developers with richer, more interactive widget experiences on mobile devices.

AndroidAppWidgetKotlin
0 likes · 9 min read
Advanced Android 12 Widget Features: Reconfigurable Widgets, Default Configurations, Size Limits, and New APIs
Sohu Tech Products
Sohu Tech Products
Oct 14, 2021 · Mobile Development

Understanding Android ViewGroup: Concepts, Drawing Process, Measure/Layout/Draw, and Custom Implementation

This article explains the fundamentals of Android ViewGroup, its coordinate systems, the complete drawing pipeline from Activity creation to SurfaceFlinger, details the Measure‑Layout‑Draw phases, and provides a step‑by‑step guide to building a custom ViewGroup with custom LayoutParams and practical examples.

AndroidCustom LayoutDraw
0 likes · 12 min read
Understanding Android ViewGroup: Concepts, Drawing Process, Measure/Layout/Draw, and Custom Implementation
vivo Internet Technology
vivo Internet Technology
Oct 13, 2021 · Mobile Development

Jetpack Compose Animation Tutorial

This Jetpack Compose animation tutorial demonstrates how to create state‑driven, visibility, size, cross‑fade, single‑value, and composite animations using declarative APIs such as remember, mutableStateOf, AnimatedVisibility, animateContentSize, animate*AsState, and updateTransition, showing concise Kotlin code that simplifies UI animation development.

AndroidComposeJetpack Compose
0 likes · 10 min read
Jetpack Compose Animation Tutorial
Alibaba Terminal Technology
Alibaba Terminal Technology
Oct 11, 2021 · Mobile Development

How Android Handles ANR SIGQUIT: Signal Interception Explained

This article explains how Android captures ANR events by intercepting the SIGQUIT signal, covering the relevant signal‑handling functions (kill, signal, sigaction, sigwait, pthread_sigmask), their differences, the SignalCatcher thread implementation, and how developers can create custom SIGQUIT monitors for ANR analysis.

ANRAndroidSIGQUIT
0 likes · 15 min read
How Android Handles ANR SIGQUIT: Signal Interception Explained
Sohu Tech Products
Sohu Tech Products
Oct 6, 2021 · Mobile Development

Android Memory Optimization: Causes, Tools, Image Strategies, and Online OOM Monitoring with KOOM

This article explains why Android memory optimization is needed, introduces background concepts such as garbage collection and memory leaks, reviews common tools like Memory Profiler, MAT and LeakCanary, details image‑related memory reduction techniques, and presents the open‑source KOOM framework for online OOM detection and analysis.

AndroidKOOMLeakCanary
0 likes · 23 min read
Android Memory Optimization: Causes, Tools, Image Strategies, and Online OOM Monitoring with KOOM
MaGe Linux Operations
MaGe Linux Operations
Oct 6, 2021 · Mobile Development

Automate WeChat Jump on Android with Python and ADB

This guide explains how to set up ADB on a Windows PC, capture screenshots from an Android device, analyze the image to locate the game piece and platform in the WeChat Jump mini‑program, and automatically perform jumps using Python code that calculates press duration and simulates swipe input.

ADBAndroidImage Processing
0 likes · 12 min read
Automate WeChat Jump on Android with Python and ADB
Tencent Music Tech Team
Tencent Music Tech Team
Oct 1, 2021 · Frontend Development

Tree and View Systems Across Web, Android, iOS, and Flutter

These articles compare how Web, Android, iOS, and Flutter represent UI structures—detailing the DOM and Virtual DOM creation, diffing, and rendering on the Web, and the XML‑based layout inflation, view hierarchy, styling, and drawing pipeline on Android—to help front‑end developers grasp each platform’s tree‑based architecture.

AndroidFlutterView System
0 likes · 11 min read
Tree and View Systems Across Web, Android, iOS, and Flutter
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 30, 2021 · Mobile Development

Understanding ART Runtime GC Configuration and Heap Layout on Android R

The article explains Android R’s ART runtime garbage‑collection configuration and heap layout—including RegionSpace, ImageSpace, ZygoteSpace, non‑moving and LargeObject spaces—details concurrent, native, transition and blocking GC types, illustrates real‑world performance issues, and offers optimization strategies for developers.

ARTAndroidGarbage Collection
0 likes · 19 min read
Understanding ART Runtime GC Configuration and Heap Layout on Android R
ByteDance Terminal Technology
ByteDance Terminal Technology
Sep 29, 2021 · Mobile Development

Bypassing Android 10+ dex2oat Restrictions for Performance Optimization

This technical article investigates the Android 10+ dex2oat limitation that blocks app‑initiated compilation, analyzes its SELinux enforcement, and presents a practical solution using system commands and binder calls to trigger dex2oat for both primary and secondary APKs, achieving significant load‑time and runtime improvements.

ADBAndroidMobile
0 likes · 20 min read
Bypassing Android 10+ dex2oat Restrictions for Performance Optimization
BaiPing Technology
BaiPing Technology
Sep 28, 2021 · Mobile Development

Master NFC Integration Across Android, iOS, and WeChat Mini Programs

This comprehensive guide explains what NFC is, compares it with other short‑range wireless technologies, and provides step‑by‑step tutorials for implementing NFC on Android, iOS, and WeChat mini‑programs, covering chip data writing, NDEF formatting, App Clip integration, and universal link handling.

AndroidNDEFNFC
0 likes · 16 min read
Master NFC Integration Across Android, iOS, and WeChat Mini Programs
Kuaishou Tech
Kuaishou Tech
Sep 28, 2021 · Mobile Development

Understanding and Optimizing Time To Interactive (TTI) on the Kuaishou Android App

This article explains the concept of Time To Interactive (TTI) for the Kuaishou Android app, details how to quantify the metric using FrameTime instead of FPS, describes data collection methods, offline and online tracing, a performance lab, and comprehensive governance and task‑scheduling strategies to reduce startup lag.

AndroidFrameTimeMobile Development
0 likes · 17 min read
Understanding and Optimizing Time To Interactive (TTI) on the Kuaishou Android App
ByteDance Dali Intelligent Technology Team
ByteDance Dali Intelligent Technology Team
Sep 28, 2021 · Mobile Development

Achieving Precise Vertical Text Centering in Flutter: Font Metrics Analysis and Android‑Based Solution

This article investigates why text in Flutter buttons often fails to vertically center, analyzes Android font metrics and NotoSansCJK details, explores native Android solutions like includeFontPadding and Paint.getTextBounds, and proposes a Flutter implementation using minikin layout to achieve precise vertical centering.

AndroidFlutterFont Metrics
0 likes · 15 min read
Achieving Precise Vertical Text Centering in Flutter: Font Metrics Analysis and Android‑Based Solution
Snowball Engineer Team
Snowball Engineer Team
Sep 24, 2021 · Mobile Development

Custom Stock K-Line Chart with Jetpack Compose: Drawing and Gesture Handling

This article demonstrates how to build a custom stock K-line chart in Android using Jetpack Compose, covering the transition from traditional View drawing to Compose's Canvas API, detailed code for rendering, and implementing drag, long‑press, and pinch‑zoom gestures with state‑driven UI updates.

AndroidCustom ViewJetpack Compose
0 likes · 16 min read
Custom Stock K-Line Chart with Jetpack Compose: Drawing and Gesture Handling
Baidu Geek Talk
Baidu Geek Talk
Sep 22, 2021 · Mobile Development

Video Player Architecture Refactoring and Performance Optimization in an Android Short‑Video App

The article details how refactoring the Haokan Android short‑video client from a single global player to per‑holder multi‑player instances, combined with lifecycle‑lite event handling, pre‑loading, and dedicated thread operations, cut start‑up latency by ~150 ms, reduced frame‑drops dramatically, and boosted overall user experience and business metrics.

AndroidPerformanceOptimizationRecyclerView
0 likes · 20 min read
Video Player Architecture Refactoring and Performance Optimization in an Android Short‑Video App
IT Architects Alliance
IT Architects Alliance
Sep 21, 2021 · Fundamentals

Analyzing Android 6.0 Storage Architecture and Communication Design

This article examines Android 6.0’s storage architecture, detailing the roles and interactions of MountService, Vold, and the kernel, illustrating module and process structures, communication flows via sockets, and highlighting performance considerations such as thread blocking and ANR issues.

AndroidMountServiceProcess Communication
0 likes · 14 min read
Analyzing Android 6.0 Storage Architecture and Communication Design
Kuaishou Frontend Engineering
Kuaishou Frontend Engineering
Sep 17, 2021 · Mobile Development

How Kuaishou Optimizes Android TTI: From Definition to Real‑Time Monitoring

This article explains the concept of Time To Interactive (TTI) for Kuaishou's Android client, details how the metric is quantified using FrameTime instead of FPS, describes offline and online data‑collection methods, and outlines the scheduling framework and governance measures designed to reduce post‑cold‑start jank.

AndroidFrameTimeTTI
0 likes · 18 min read
How Kuaishou Optimizes Android TTI: From Definition to Real‑Time Monitoring
DeWu Technology
DeWu Technology
Sep 17, 2021 · Mobile Development

Design of the DeWu App ANR Monitoring Platform

The DeWu ANR Monitoring Platform replaces Bugly with a comprehensive internal system that collects ProcessErrorStateInfo, tombstone files, main‑thread stack samples, Looper message histories, and app state, parses and aggregates this data, visualizes trends and root‑cause details, and guides developers in mitigating ANRs.

ANRAndroidLooper
0 likes · 15 min read
Design of the DeWu App ANR Monitoring Platform
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 10, 2021 · Information Security

Understanding dm-verity: Design Principles, Application Layer, and Kernel Implementation

dm‑verity is a Linux device‑mapper target that protects a data partition’s integrity by using a compile‑time hash‑tree stored on a separate hash device, with Android employing it for verified boot; user‑space creates the dm device, loads the verity table, activates it, while the kernel’s dev_create, table_load, and suspend handlers set up mapped_device structures and enforce per‑block hash verification during I/O.

AndroidLinux kerneldevice mapper
0 likes · 15 min read
Understanding dm-verity: Design Principles, Application Layer, and Kernel Implementation
WeChat Client Technology Team
WeChat Client Technology Team
Sep 8, 2021 · Mobile Development

Uncovering Hidden Android Thread Pitfalls: Memory Leaks, Monitoring, and Hook Solutions

This article explores obscure Android thread issues—including uncontrolled thread creation, stack memory leaks, and the impact of thread‑priority settings—while presenting monitoring techniques, a pthread hook implementation, and performance considerations to help developers detect and resolve thread‑related crashes.

AndroidHookMemory Management
0 likes · 15 min read
Uncovering Hidden Android Thread Pitfalls: Memory Leaks, Monitoring, and Hook Solutions
ELab Team
ELab Team
Sep 2, 2021 · Mobile Development

Mastering In-App and Third-Party Payments: A Complete Guide for Mobile Apps

This article outlines the various payment channels—In‑App Purchase, third‑party, H5, and mini‑program—across iOS, Android, and WeChat environments, detailing their flow diagrams, required API interactions, code examples, and best‑practice recommendations to help developers implement seamless mobile payments.

AndroidIn-App PurchaseWeChat Pay
0 likes · 16 min read
Mastering In-App and Third-Party Payments: A Complete Guide for Mobile Apps
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Sep 2, 2021 · Mobile Development

Upgrading Android Gradle Plugin from 3.5 to 4.1: Issues and Solutions

Upgrading a project from Android Gradle Plugin 3.5 to 4.1.3 required applying official migration steps, adjusting deprecated fields, resource paths, manifest tasks, ASM version, disabling configure‑on‑demand and the new zipflinger packager, and fixing NDK configuration, which together yielded roughly 36 % faster builds and a 5 MB smaller APK.

AGPAndroidBuild Optimization
0 likes · 18 min read
Upgrading Android Gradle Plugin from 3.5 to 4.1: Issues and Solutions