Tagged articles

Android

1864 articles · Page 11 of 19
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Jan 15, 2021 · Mobile Development

Android Frame Drop Detection and Monitoring Principles

The article explains Android’s frame‑drop detection and monitoring principles, covering refresh rate, Vsync, Choreographer and FrameInfo mechanisms, how lag is perceived, methods to calculate and retrieve dropped frames, and best practices such as avoiding heavy main‑thread work to ensure smooth UI performance.

AndroidPerformance MonitoringUI optimization
0 likes · 6 min read
Android Frame Drop Detection and Monitoring Principles
360 Quality & Efficiency
360 Quality & Efficiency
Jan 15, 2021 · Mobile Development

Android App Keep-Alive Strategies: Boot Broadcast, Account Sync, Foreground Service, and JobScheduler

This article explains various Android keep‑alive techniques—including boot‑time auto‑start, account‑sync mechanisms, foreground services, and scheduled jobs—providing code examples and configuration steps to help apps stay alive while also showing how to disable these features on specific devices.

Account SyncAndroidApp Keep-Alive
0 likes · 11 min read
Android App Keep-Alive Strategies: Boot Broadcast, Account Sync, Foreground Service, and JobScheduler
Amap Tech
Amap Tech
Jan 15, 2021 · Mobile Development

MemTower: A Rust‑Based Native Memory Profiling Solution for Android

MemTower is a Rust‑rewritten native memory profiler for Android that supports versions from 4.x onward, uses an LD_PRELOAD custom allocator to avoid recursive malloc loops, provides fast ELF‑based stack unwinding, multi‑dimensional leak analysis and flame‑graph visualisation, and cuts leak‑investigation time from days to minutes.

AndroidRustmemory profiling
0 likes · 13 min read
MemTower: A Rust‑Based Native Memory Profiling Solution for Android
TAL Education Technology
TAL Education Technology
Jan 14, 2021 · Mobile Development

Asynchronous Loading of Android .so Libraries: Problems, Solutions, and Best Practices

This article examines the challenges of loading large third‑party .so libraries in Android apps, analyzes traditional and advanced asynchronous loading methods, discusses dependency and text‑relocation issues, and presents practical solutions and implementation steps to reduce package size while maintaining stability.

AndroidAsynchronous LoadingMobile Development
0 likes · 8 min read
Asynchronous Loading of Android .so Libraries: Problems, Solutions, and Best Practices
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Jan 8, 2021 · Operations

Understanding eBPF and Its Use on Android for System Call Counting

The article explains eBPF’s evolution from packet filtering to a C‑compiled, sandboxed kernel framework, describes its core concepts of bytecode, JIT, and maps, and walks through building, loading, and using an Android eBPF program that counts system calls per PID via tracepoint hooks.

AndroidBPFLinux kernel
0 likes · 9 min read
Understanding eBPF and Its Use on Android for System Call Counting
Top Architect
Top Architect
Jan 7, 2021 · Fundamentals

Android HashMap Source Code Analysis (Based on Android SDK 28)

This article provides a detailed analysis of the Android HashMap implementation in SDK 28, covering its fields, internal Node class, constructors, resizing logic, hash function, collision handling, and related Map implementations, with complete source code excerpts and performance considerations.

AndroidCollisionResolutionDataStructure
0 likes · 34 min read
Android HashMap Source Code Analysis (Based on Android SDK 28)
58 Tech
58 Tech
Jan 6, 2021 · Mobile Development

Non‑intrusive Migration of Business Libraries to Android Dynamic Feature Modules

This article explores the motivations, methodology, and practical implementation of converting existing Android business libraries into Dynamic Feature modules with minimal intrusion, covering Android App Bundle basics, build tools, dependency handling, resource merging, Arouter integration, and performance gains achieved through parallel and incremental builds.

ASMAndroidApp Bundle
0 likes · 15 min read
Non‑intrusive Migration of Business Libraries to Android Dynamic Feature Modules
JD Retail Technology
JD Retail Technology
Jan 6, 2021 · Mobile Development

Kotlin Language Features, Differences from Java, and Their Practical Application in a Mobile Cash Register App

This article examines the classification of mobile apps, the shortcomings of an H5‑based cash register, the rationale for adopting Kotlin over Java, a detailed overview of Kotlin’s language features and differences, practical implementation details, interoperability, null‑safety techniques, encountered issues, and the performance gains achieved after native migration.

AndroidInteroperabilityKotlin
0 likes · 16 min read
Kotlin Language Features, Differences from Java, and Their Practical Application in a Mobile Cash Register App
Amap Tech
Amap Tech
Dec 30, 2020 · Mobile Development

App Startup Performance Optimization: Techniques and Tools for iOS and Android

Optimizing app launch on iOS and Android—through deep‑link handling, H5 splash strategies, On‑Demand Resources, custom WKWebView schemes, reduced download size, static and runtime .so loading flags, thread‑pool tuning, method swizzling, actor‑based concurrency, and using Instruments, MetricKit and Android Profiler—prevents user abandonment and boosts conversion.

AndroidPerformance OptimizationProfiling
0 likes · 37 min read
App Startup Performance Optimization: Techniques and Tools for iOS and Android
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Dec 30, 2020 · Mobile Development

Poplayer: A Solution for Separating Temporary and Stable Business in Mobile Apps

NetEase Cloud Music’s Poplayer adds a WebView overlay to Android apps, isolating temporary features from core functionality while enabling hot‑swappable, reusable modules, and achieves massive memory savings—over 80,000‑fold—and up to 90‑times faster drawing through position/alpha caching, bitmap size reduction, clipRect drawing, and ARGB‑to‑ALPHA_8 optimization.

AndroidArchitecture PatternBitmap optimization
0 likes · 10 min read
Poplayer: A Solution for Separating Temporary and Stable Business in Mobile Apps
Top Architect
Top Architect
Dec 25, 2020 · Mobile Development

High‑Fidelity Clones of Popular Apps: Open‑Source iOS and Android Projects

This article introduces a curated list of open‑source iOS and Android projects on GitHub that faithfully clone popular applications such as WeChat, YouTube, NetEase Cloud Music, Bilibili, and Weibo, providing links, screenshots, and brief descriptions for developers seeking practical learning resources.

AndroidGitHubMobile Development
0 likes · 4 min read
High‑Fidelity Clones of Popular Apps: Open‑Source iOS and Android Projects
Swan Home Tech Team
Swan Home Tech Team
Dec 22, 2020 · Mobile Development

Daojia App General Development Framework: Architecture, Componentization, and Project Practice

This article introduces the Daojia App general development framework, detailing its evolution, componentization challenges and solutions, layered architecture, cross‑platform strategy with Flutter, and its practical application in the Jiazheng Cloud project to improve development efficiency and maintainability.

AndroidFluttercross-platform
0 likes · 13 min read
Daojia App General Development Framework: Architecture, Componentization, and Project Practice
Alibaba Cloud Developer
Alibaba Cloud Developer
Dec 20, 2020 · Mobile Development

How Youku Made Its Mobile App Accessible for Visually Impaired Users

This article details Youku's comprehensive accessibility overhaul for its mobile client, describing collaboration with blind‑testing experts, deep technical adaptations across Android, iOS, Weex, Flutter and H5, and specific UI improvements that enable visually‑impaired users to navigate and enjoy video content independently.

AndroidScreen Readeraccessibility
0 likes · 15 min read
How Youku Made Its Mobile App Accessible for Visually Impaired Users
phodal
phodal
Dec 14, 2020 · Mobile Development

What Makes Android Build and Dependency Management Tick? A Deep Dive

This article examines the end‑to‑end workflow of Android app development, detailing how IDEs interact with Gradle, how tasks and dependency resolution are orchestrated, and what infrastructure underlies modern language tooling and build systems.

AndroidGradleMobile Development
0 likes · 8 min read
What Makes Android Build and Dependency Management Tick? A Deep Dive
Watermelon Video Tech Team
Watermelon Video Tech Team
Dec 14, 2020 · Mobile Development

Tailor: An Open‑Source Android Memory Snapshot Trimming and Compression Tool for OOM Governance

Tailor is an open‑source Android memory‑snapshot trimming and compression tool developed by the Xigua Video team that dramatically reduces OOM occurrences by over 95% through efficient snapshot cropping, zlib compression, and seamless integration with the dump process, while preserving essential debugging information.

AndroidHprofOOM
0 likes · 17 min read
Tailor: An Open‑Source Android Memory Snapshot Trimming and Compression Tool for OOM Governance
JD Retail Technology
JD Retail Technology
Dec 9, 2020 · Mobile Development

Building and Optimizing a First‑Screen Performance Monitoring System for Android Apps (JD Mall Case Study)

This article describes how JD Mall’s Android team designed a custom first‑screen latency monitoring system, collected lifecycle, network and rendering metrics via AOP and configuration, and applied a series of optimizations—including plugin preloading, network parallelism, layout inflation tricks, and hardware acceleration—to achieve over 30% faster app start‑up and significantly reduced user churn.

AOPAndroidApp Optimization
0 likes · 17 min read
Building and Optimizing a First‑Screen Performance Monitoring System for Android Apps (JD Mall Case Study)
The Dominant Programmer
The Dominant Programmer
Dec 9, 2020 · Mobile Development

How to Use an Adapter to Populate a RecyclerView in Android

This article walks through the complete process of adding a RecyclerView to an Android project, including the required support library dependency, creating the layout and item XML files, implementing a custom Adapter with ViewHolder, overriding the essential methods, and updating the view with a dynamic data source such as recorded audio file paths.

AdapterAndroidMobile Development
0 likes · 12 min read
How to Use an Adapter to Populate a RecyclerView in Android
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Dec 9, 2020 · Mobile Development

Seamless Video Playback Across Activities in NetEase Cloud Music: MediaPlayer Rebinding and Mini‑Window Solutions

NetEase Cloud Music’s 8.0 redesign enables seamless video playback across Activities by rebinding MediaPlayer instances to new TextureViews via AIDL, using a process‑pooled player architecture, while also offering simpler alternatives such as animated fake page switches, seek‑based reinitialization, and application‑context view reuse.

AIDLActivityAndroid
0 likes · 13 min read
Seamless Video Playback Across Activities in NetEase Cloud Music: MediaPlayer Rebinding and Mini‑Window Solutions
The Dominant Programmer
The Dominant Programmer
Dec 7, 2020 · Mobile Development

How to Perform CRUD on SQLite with Android Room ORM

This article walks through using Google’s Room ORM in an Android project to create a SQLite database, define entities and DAOs, set up a singleton database instance, and implement add, query, fuzzy search, and delete operations via a simple UI.

AndroidCRUDORM
0 likes · 11 min read
How to Perform CRUD on SQLite with Android Room ORM
Ctrip Technology
Ctrip Technology
Dec 3, 2020 · Mobile Development

Applying Kotlin Coroutines and Jetpack MVVM in Ctrip Flight App: Architecture, Implementation, and Production Challenges

This article explains how Ctrip's flight Android app refactored its home page using Kotlin coroutines, Jetpack AAC components, and MVVM architecture, detailing the technical and business background, code patterns, production issues, and lessons learned for large‑scale mobile development.

AndroidCoroutinesJetpack
0 likes · 20 min read
Applying Kotlin Coroutines and Jetpack MVVM in Ctrip Flight App: Architecture, Implementation, and Production Challenges
The Dominant Programmer
The Dominant Programmer
Dec 3, 2020 · Mobile Development

Implementing Android App Update with SpringBoot Backend and Vue Frontend

The article walks through a complete Android app update workflow where an administrator uploads an APK via a Vue front‑end to a SpringBoot service, the backend stores version data, and the Android client periodically checks for newer versions, downloads the APK using a Service and OkHttp, and installs it automatically.

AndroidApp UpdateFileProvider
0 likes · 37 min read
Implementing Android App Update with SpringBoot Backend and Vue Frontend
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Dec 2, 2020 · Mobile Development

Why React Native Custom Views Need Explicit Width/Height and How to Fix It

This article analyzes why custom Android Views embedded in React Native often fail to render without explicit width and height, explores the underlying RN root layout, measureSpec, and Yoga engine mechanisms, and provides practical solutions such as FrameCallback registration and layout updates to ensure proper rendering.

AndroidCustom ViewLayout
0 likes · 12 min read
Why React Native Custom Views Need Explicit Width/Height and How to Fix It
Qunar Tech Salon
Qunar Tech Salon
Dec 1, 2020 · Information Security

Bypassing and Defending HTTPS Certificate Verification in Android Apps

This article explains the mechanisms of HTTPS certificate verification in Android, outlines various implementation methods, demonstrates how to bypass verification using tools like JustTrustMe and SSLkiller, and provides detection and protection strategies for developers to safeguard their apps against such attacks.

AndroidCertificate VerificationHTTPS
0 likes · 9 min read
Bypassing and Defending HTTPS Certificate Verification in Android Apps
The Dominant Programmer
The Dominant Programmer
Nov 30, 2020 · Mobile Development

How to Implement Five Common Android Dialog Types

This tutorial walks through creating five typical Android dialogs—normal, list‑based, custom‑view, progress bar, and date picker—by adding buttons to a layout, writing click handlers, and using AlertDialog, ProgressDialog, and DatePickerDialog with complete code examples and screenshots.

AlertDialogAndroidCustomView
0 likes · 8 min read
How to Implement Five Common Android Dialog Types
360 Tech Engineering
360 Tech Engineering
Nov 30, 2020 · Mobile Development

Comprehensive Guide to Android App Packet Capture Using an Emulator, ADB, Charles, and Fiddler

This tutorial walks through a complete Android app packet‑capture workflow—installing a Wi‑Fi‑proxy‑compatible emulator, deploying the app via UI or ADB, configuring Charles or Fiddler as a debugging proxy, handling HTTPS certificates for Android 7+, and capturing traffic for functional, security, or development testing.

ADBAndroidCharles Proxy
0 likes · 8 min read
Comprehensive Guide to Android App Packet Capture Using an Emulator, ADB, Charles, and Fiddler
DeWu Technology
DeWu Technology
Nov 27, 2020 · Mobile Development

Analysis and Fix of Android Memory Leak Caused by AsyncTask SerialExecutor Blocking on Vivo Devices

The analysis reveals that on Vivo devices running Android 9, a static AsyncTask SERIAL_EXECUTOR blocks the UpdateBottomFlagTask in several order‑related activities, leaking the Activity context, and the fix replaces this executor via reflection with a custom parallel SerialExecutorProxy to prevent the leak.

AndroidAsyncTaskMemory Leak
0 likes · 14 min read
Analysis and Fix of Android Memory Leak Caused by AsyncTask SerialExecutor Blocking on Vivo Devices
Alibaba Cloud Developer
Alibaba Cloud Developer
Nov 27, 2020 · Mobile Development

How Mobile DevOps Transforms App Delivery: Challenges and Solutions

This article explains how DevOps principles are adapted for mobile app delivery, detailing the unique challenges of fragmented build environments, device diversity, longer release cycles, and massive scale, and describes Alibaba Cloud’s EMAS Mobile DevOps solution, its architecture, security, scalability, and future roadmap.

AndroidCI/CDCloud Native
0 likes · 21 min read
How Mobile DevOps Transforms App Delivery: Challenges and Solutions
DeWu Technology
DeWu Technology
Nov 25, 2020 · Mobile Development

High-Availability Log Retrieval for Mobile Debugging

The session introduces a high‑availability log retrieval platform that tackles mobile debugging challenges—device fragmentation, unstable networks, and delayed logs—by automating command dispatch, client uploads, and notifications, employing a four‑role architecture with real‑time push, fallback mechanisms, and SDKs for logging and retrieval, while planning broader app support, multi‑user tasks, and richer log types.

AndroidSDKhigh availability
0 likes · 6 min read
High-Availability Log Retrieval for Mobile Debugging
JD Retail Technology
JD Retail Technology
Nov 23, 2020 · Operations

Automated Monitoring and Validation of JD.com Android Channel Packages

This article describes how JD.com implements an automated system to monitor Android channel packages across multiple app stores, using a PHP/CodeIgniter front‑end, Java services with Selenium, Walle for channel information extraction, and email notifications to ensure correct package release and reduce economic loss.

AndroidChannel MonitoringJava
0 likes · 9 min read
Automated Monitoring and Validation of JD.com Android Channel Packages
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 20, 2020 · Mobile Development

How to Use ftrace Event Tracing to Debug Android Process Scheduling

This article explains the fundamentals of Linux ftrace, details the event‑tracing mechanism and tracepoint macros, shows how to enable and filter events on ARM64 Android devices, and demonstrates a practical workflow for capturing low‑probability scheduling bugs in camera‑related processes.

AndroidKerneldebugging
0 likes · 11 min read
How to Use ftrace Event Tracing to Debug Android Process Scheduling
iQIYI Technical Product Team
iQIYI Technical Product Team
Nov 20, 2020 · Mobile Development

Componentization Architecture and Implementation for iQIYI Knowledge Mobile App

iQIYI Knowledge implemented a three‑layer componentization architecture—base, functional, and business components—combined with protocol‑based service registration, URL routing, and an automated build pipeline, enabling cross‑platform code reuse, independent testing, and faster integration while reducing coupling and maintenance overhead.

AndroidArchitectureComponentization
0 likes · 14 min read
Componentization Architecture and Implementation for iQIYI Knowledge Mobile App
Qunar Tech Salon
Qunar Tech Salon
Nov 20, 2020 · Mobile Development

Debugging Dalvik VM Native Code with LLDB on Android

This guide explains how to configure Android Studio and LLDB to perform native debugging of the Dalvik virtual machine on Android devices, covering both scenarios with and without app source code, required environment setup, useful LLDB commands, and step‑by‑step procedures for remote debugging.

AndroidApp DevelopmentDalvik
0 likes · 8 min read
Debugging Dalvik VM Native Code with LLDB on Android
DeWu Technology
DeWu Technology
Nov 19, 2020 · Mobile Development

Evolution of Android Architecture at DeWu App

The DeWu Android team transformed a rapidly expanding, tightly‑coupled codebase into a modular, stable, and efficient architecture by introducing componentization, CI/CD pipelines, DevOps practices, and reusable services across three evolutionary stages, ultimately delivering business value through open‑source libraries, streamlined processes, and improved developer productivity.

AndroidArchitectureComponentization
0 likes · 8 min read
Evolution of Android Architecture at DeWu App
vivo Internet Technology
vivo Internet Technology
Nov 18, 2020 · Mobile Development

In‑Depth Analysis of Android Handler Mechanism, Looper, MessageQueue and Their Practical Applications

The article dissects Android’s Handler‑Looper‑MessageQueue architecture, explaining ThreadLocal‑based Looper binding, various Handler constructors, async versus sync messages, barrier handling, IdleHandler, HandlerThread and IntentService usage, and the differences between Handler.post and View.post for responsive UI development.

AndroidLooperMessageQueue
0 likes · 29 min read
In‑Depth Analysis of Android Handler Mechanism, Looper, MessageQueue and Their Practical Applications
Qunar Tech Salon
Qunar Tech Salon
Nov 18, 2020 · Mobile Development

Understanding Android Looper, MessageQueue, and Native Message Handling

This article explains how Android drives applications through a message‑driven model by detailing the roles of Message, MessageQueue, Looper, Handler, and ThreadLocal, and walks through the native implementation of ActivityThread's main loop, including prepareMainLooper, MessageQueue initialization, epoll integration, and the polling mechanisms that power the message processing cycle.

AndroidEpollLooper
0 likes · 17 min read
Understanding Android Looper, MessageQueue, and Native Message Handling
The Dominant Programmer
The Dominant Programmer
Nov 17, 2020 · Mobile Development

Offline Android Text‑to‑Speech without Third‑Party SDKs

This guide shows how to create an offline Android app that converts any text to speech using the platform‑provided TextToSpeech class, covering UI layout with EditText and Button, a singleton SpeechUtils helper, language, pitch and rate configuration, and full code snippets for a working demo.

AndroidJavaMobile Development
0 likes · 5 min read
Offline Android Text‑to‑Speech without Third‑Party SDKs
JD Tech Talk
JD Tech Talk
Nov 13, 2020 · Mobile Development

Android App Startup Speed Optimization Practices at JD Finance

This article details JD Finance's Android mobile app startup speed optimization project, covering background, launch type analysis, measurement tools, and a series of practical improvements such as theme switching, application code reduction, thread management, network tweaks, and activity refinements that together cut launch time by up to 45%.

AndroidJD FinanceMobile Development
0 likes · 15 min read
Android App Startup Speed Optimization Practices at JD Finance
360 Tech Engineering
360 Tech Engineering
Nov 13, 2020 · Mobile Development

Guide to Reducing Android Device Power Consumption and Preventing Shutdown During Automated Testing

This guide explains how to lower Android device power usage and avoid unexpected shutdowns during large‑scale automated testing by controlling battery thresholds, adjusting screen brightness, terminating background apps, setting screen timeout, synchronizing time, and managing audio settings through ADB shell commands.

AndroidDevice AutomationShell Commands
0 likes · 8 min read
Guide to Reducing Android Device Power Consumption and Preventing Shutdown During Automated Testing
360 Quality & Efficiency
360 Quality & Efficiency
Nov 13, 2020 · Mobile Development

Understanding Android Lint: Features, Rules, Jenkins Integration, and Common Pitfalls

This article introduces Android Lint as a static analysis tool, explains its rule categories—Correctness, Performance, Internationalization, and Security—shows how to customize lint.xml, demonstrates integration with Jenkins for automated checks, and shares result analysis and typical integration pitfalls.

AndroidJenkinsMobile Development
0 likes · 5 min read
Understanding Android Lint: Features, Rules, Jenkins Integration, and Common Pitfalls
Ctrip Technology
Ctrip Technology
Nov 12, 2020 · Backend Development

Ctrip Live Streaming Technology Overview and Implementation

This article presents a comprehensive overview of Ctrip's live streaming solution, covering the evolution of live streaming, core streaming principles, encoding and protocol choices such as RTMP, HLS, WebRTC, the front‑end framework built with Android, ReactNative and native modules, encountered integration challenges, and the final architectural summary.

AndroidReactNativeencoding
0 likes · 12 min read
Ctrip Live Streaming Technology Overview and Implementation
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Nov 12, 2020 · Mobile Development

React Native Optimization: Bundle Splitting and Container Preheating for Improved Page Load Speed

By implementing bundle splitting to shrink the initial JavaScript payload and pre‑heating the React Native container during idle periods, the team cut the mall page bundle from 1.1 MB to 856 KB and reduced iOS launch time from roughly 450 ms to 200 ms and Android from about 4.5 s to 2.5 s, achieving significant cross‑platform speed gains validated through A/B testing.

AndroidBundle SplittingPreheating
0 likes · 6 min read
React Native Optimization: Bundle Splitting and Container Preheating for Improved Page Load Speed
Qunar Tech Salon
Qunar Tech Salon
Nov 12, 2020 · Mobile Development

Understanding Android Binder: IPC Mechanism, Architecture, and Security

This article explains Android's Binder inter‑process communication mechanism, compares it with other Linux IPC methods, describes its architecture in both Java and native layers, outlines the security advantages, and details the underlying kernel protocol and command set.

AndroidArchitectureBinder
0 likes · 10 min read
Understanding Android Binder: IPC Mechanism, Architecture, and Security
Qunar Tech Salon
Qunar Tech Salon
Nov 10, 2020 · Mobile Development

Android Automation Interaction: Traditional ADB Scripts and Native Methods

This article examines Android automation techniques, comparing simple ADB script‑based interactions with native‑code approaches using activity lifecycle callbacks, view identification, and MotionEvent simulation, and discusses their advantages, limitations, and suitable application scenarios.

ADBAndroidNative
0 likes · 8 min read
Android Automation Interaction: Traditional ADB Scripts and Native Methods
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 6, 2020 · Mobile Development

Overview of CHRE (Context Hub Runtime Environment) Architecture, Code Structure, and Event Processing

CHRE (Context Hub Runtime Environment) is an event‑driven, single‑threaded framework that hosts nanoapps on a sensor hub, organizing its source tree into API, Core, PAL, Platform, Apps, and Util directories, and managing events through a singleton EventLoopManager that initializes, queues, and dispatches system and nanoapp events.

AndroidCHREContext Hub
0 likes · 7 min read
Overview of CHRE (Context Hub Runtime Environment) Architecture, Code Structure, and Event Processing
Tencent Music Tech Team
Tencent Music Tech Team
Nov 6, 2020 · Mobile Development

Design and Implementation of an Incremental Compilation Component for Android Projects

The team built a low‑intrusion Gradle plugin that detects changed source and resource files, performs precise dependency analysis, leverages aapt2 for incremental resource compilation, and injects updated Dex and assets into the running app, cutting full Android builds from 418 seconds to 13 seconds and boosting daily developer productivity on large projects such as QQ Music.

AndroidBuild OptimizationDynamic Loading
0 likes · 23 min read
Design and Implementation of an Incremental Compilation Component for Android Projects
Qunar Tech Salon
Qunar Tech Salon
Nov 6, 2020 · Fundamentals

Understanding Android System Property Service: Architecture, Data Structures, and APIs

This article explains the Android Property system, detailing its shared‑memory architecture, the trie‑based data structures (prop_bt, prop_area, prop_info), the initialization flow in the init process, the core C APIs for adding, reading, updating and iterating properties, and the Java SystemProperties wrapper used by applications.

AndroidC++JNI
0 likes · 23 min read
Understanding Android System Property Service: Architecture, Data Structures, and APIs
Amap Tech
Amap Tech
Oct 30, 2020 · Mobile Development

Video Streaming Solution for the ARC Car Cloud Control Platform

The ARC Car Cloud Control platform now streams the vehicle’s screen using Android’s Virtual Display and a C++‑based H.264 hardware encoder, sending raw video over a TCP socket to a server that adaptively adjusts bitrate and frame rate, while the web client decodes the fragmented MP4 via MSE, dramatically lowering CPU usage and latency on low‑end head‑units.

AndroidH.264Media Source Extensions
0 likes · 8 min read
Video Streaming Solution for the ARC Car Cloud Control Platform
Meituan Technology Team
Meituan Technology Team
Oct 29, 2020 · Mobile Development

Hybrid Native Map and WebView Fusion Framework for Meituan Ride-Hailing

Meituan Ride‑hailing replaced its slow JavaScript map with a two‑layer Fusion Framework that places a full‑screen native Tencent map beneath a transparent WebView, uses hot‑region data to dispatch touches to the appropriate layer, and synchronizes UI via a Vue directive and JSBridge, dramatically speeding load times and delivering smoother map interactions.

AndroidGesture DispatchHybrid Development
0 likes · 17 min read
Hybrid Native Map and WebView Fusion Framework for Meituan Ride-Hailing
Xianyu Technology
Xianyu Technology
Oct 29, 2020 · Mobile Development

Performance Optimization of Long List Scrolling in Android and Flutter

The article details how Xianyu improved long‑list scrolling smoothness on both native Android and Flutter by building a cross‑platform frame‑jank detection tool, applying async view‑caching and unbinding in Android, and using repaint boundaries, clipping tweaks, time‑slicing and custom scroll physics in Flutter, achieving up to 57 FPS and halving big‑jank counts on low‑end devices.

AndroidFlutterListView
0 likes · 21 min read
Performance Optimization of Long List Scrolling in Android and Flutter
360 Quality & Efficiency
360 Quality & Efficiency
Oct 23, 2020 · Mobile Development

Techniques to Reduce Android Device Power Consumption and Prevent Shutdown During Automated Testing

This guide explains how to lower Android device power usage and avoid unexpected shutdowns in batch testing by managing battery thresholds, adjusting screen brightness, disabling background apps, setting screen timeout, enabling automatic time, and controlling audio settings through shell commands and reflection.

AndroidDevice AutomationShell Commands
0 likes · 8 min read
Techniques to Reduce Android Device Power Consumption and Prevent Shutdown During Automated Testing
Programmer DD
Programmer DD
Oct 19, 2020 · Mobile Development

Explore High‑Fidelity Mobile App Clones: iOS & Android GitHub Projects

This article presents a curated collection of open‑source iOS and Android clones of popular apps—WeChat, YouTube, NetEase Cloud Music, Bilibili, and Weibo—providing GitHub links, screenshots, and brief insights on how replicating these projects can sharpen development skills and reinforce learning.

AndroidGitHubMobile Development
0 likes · 4 min read
Explore High‑Fidelity Mobile App Clones: iOS & Android GitHub Projects
Youzan Coder
Youzan Coder
Oct 16, 2020 · Mobile Development

ZanWeexModuleSDK: A General Solution for Native-Weex Interaction at Youzan

ZanWeexModuleSDK provides a unified solution for native-Weex interaction across Youzan apps, consolidating common modules like network, routing, config, logging, notifications, tracking, and account, allowing developers to focus on Weex code while handling custom logic via a manager and standardized callbacks.

AndroidNative-JS InteractionSDK design
0 likes · 12 min read
ZanWeexModuleSDK: A General Solution for Native-Weex Interaction at Youzan
Youku Technology
Youku Technology
Oct 16, 2020 · Mobile Development

How Youku Achieved Seamless Multi‑Device UI with a Responsive Android SDK

This article explains Youku's Android responsive solution, covering the responsive SDK, loading flow, architecture, data reprocessing, page and container responsiveness, and control size adaptation, providing practical guidelines for building a single app that adapts to diverse device sizes and form factors.

AndroidData ProcessingFoldable Screens
0 likes · 13 min read
How Youku Achieved Seamless Multi‑Device UI with a Responsive Android SDK
ITPUB
ITPUB
Oct 14, 2020 · Mobile Development

Explore Open-Source Clones of Popular Apps: WeChat, YouTube, NetEase Music, Bilibili & Weibo

This article presents a curated collection of open‑source GitHub projects that faithfully replicate major mobile applications—including WeChat, YouTube, NetEase Cloud Music, Bilibili, and Weibo—providing both iOS and Android versions, repository links, and screenshots to help developers practice and learn from real‑world codebases.

AndroidMobile Developmentapp clone
0 likes · 4 min read
Explore Open-Source Clones of Popular Apps: WeChat, YouTube, NetEase Music, Bilibili & Weibo
转转QA
转转QA
Oct 14, 2020 · Mobile Development

Design and Implementation of a Code Coverage Solution for the Zhuanzhuan Mobile App

This article describes the purpose, design choices, instrumentation technique, data collection, reporting, merging strategies, platform features, and future plans of a custom code‑coverage system built for the Android and iOS versions of the Zhuanzhuan app, highlighting challenges such as accurate instrumentation, performance impact, and multi‑tag data aggregation.

Androidbackend servicecode coverage
0 likes · 12 min read
Design and Implementation of a Code Coverage Solution for the Zhuanzhuan Mobile App
Programmer DD
Programmer DD
Oct 14, 2020 · Backend Development

Does Java Reflection Really Slow Down Your App? A Deep Performance Test

This article investigates whether Java reflection impacts performance by running systematic benchmarks that compare direct method calls, reflective method calls, direct field access, and reflective field access across varying iteration counts, presenting detailed results, analysis of the slow paths, and practical guidelines to mitigate any overhead.

AndroidJavaPerformance
0 likes · 12 min read
Does Java Reflection Really Slow Down Your App? A Deep Performance Test
Programmer DD
Programmer DD
Oct 13, 2020 · Information Security

How Payment Platforms Secure Data: From DES to TLS and RSA

This article explains the security architecture of payment platforms, covering terminal data protection, symmetric and asymmetric encryption methods such as DES, 3DES, AES, and RSA, code implementations for Android, TLS transmission security, anti‑tampering signatures, and practical key‑management strategies.

AndroidDESRSA
0 likes · 20 min read
How Payment Platforms Secure Data: From DES to TLS and RSA
Youku Technology
Youku Technology
Oct 10, 2020 · Mobile Development

Alibaba Youku Responsive Design Technology: Android and iOS Implementation Practices

Alibaba’s Youku team outlines a responsive design framework that uses a single codebase and dedicated SDKs to dynamically adapt Android and iOS app layouts across diverse screen sizes, detailing architecture, data handling, loading processes, and implementation strategies that reduce development effort and maintenance costs for multi‑device deployments.

AlibabaAndroidSDK
0 likes · 3 min read
Alibaba Youku Responsive Design Technology: Android and iOS Implementation Practices
Top Architect
Top Architect
Oct 9, 2020 · Backend Development

Investigating the Performance Impact of Java Reflection

This article presents a systematic benchmark of Java reflection versus direct method and field access, analyzes the measured latency across varying call counts, identifies the costly operations within reflection (such as getMethod, getDeclaredField, invoke, and set), and offers practical guidelines to mitigate reflection‑induced performance overhead.

AndroidJavaOptimization
0 likes · 11 min read
Investigating the Performance Impact of Java Reflection
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 27, 2020 · Mobile Development

Understanding the Android Kernel Suspend Process and Power Management

The Android kernel suspend process begins when user‑space writes “mem” to /sys/power/state, triggering an autosuspend loop that validates wakeup_count, logs pending wakeups, freezes filesystems and threads, sequentially calls device suspend callbacks, prepares platform‑specific operations, disables CPUs and interrupts, saves core state, and finally enters the low‑power s2ram state.

AndroidLinuxSuspend
0 likes · 11 min read
Understanding the Android Kernel Suspend Process and Power Management
Programmer DD
Programmer DD
Sep 26, 2020 · Mobile Development

Explore Top Open-Source Clones of WeChat, YouTube, and More on GitHub

Discover a curated collection of high-fidelity open-source clones of popular apps—including WeChat, YouTube, NetEase Cloud Music, Bilibili, and Weibo—available on GitHub for both iOS and Android, complete with repository links and screenshots to help developers practice and enhance their mobile development skills.

AndroidGitHubMobile Development
0 likes · 3 min read
Explore Top Open-Source Clones of WeChat, YouTube, and More on GitHub
360 Quality & Efficiency
360 Quality & Efficiency
Sep 25, 2020 · Mobile Development

Cloud‑Based UIAutomator SDK for Android Compatibility Testing

The article presents a cloud‑driven UIAutomator SDK that automates Android app compatibility testing by handling installation, cold‑start, hot‑start and uninstall steps, dynamically updating dialog‑matching data, and providing robust error‑handling to ensure reliable testing across diverse Android devices.

AndroidCloud ConfigurationUIAutomator
0 likes · 4 min read
Cloud‑Based UIAutomator SDK for Android Compatibility Testing
Programmer DD
Programmer DD
Sep 18, 2020 · Mobile Development

Why Does iOS Feel Smoother Than Android? A Humorous Dialogue Explained

A humorous Zhihu dialogue illustrates how iOS and Android manage RAM and background processes differently, explaining why iOS often feels smoother despite having less memory, by personifying apps like WeChat, Alipay, and Taobao, the answer highlights iOS's stricter resource control versus Android's more generous allocation.

AndroidOS comparisonRAM allocation
0 likes · 6 min read
Why Does iOS Feel Smoother Than Android? A Humorous Dialogue Explained
Meituan Technology Team
Meituan Technology Team
Sep 17, 2020 · Mobile Development

Flutter Package Size Optimization Using Dynamic Delivery

The Meituan Waimai team tackled Flutter’s excessive binary growth by splitting engine, assets, and data into downloadable modules, implementing custom build flags and runtime loaders for iOS and Android, achieving up to 95 % APK size reduction and over 30 % IPA shrinkage while shifting payload to on‑demand delivery.

AndroidDynamic DeliveryFlutter
0 likes · 28 min read
Flutter Package Size Optimization Using Dynamic Delivery
Ctrip Technology
Ctrip Technology
Sep 17, 2020 · Mobile Development

Applying Divide‑and‑Conquer and Jetpack Architecture to Decouple Complex Payment Flows in Android

The article describes how a Ctrip senior Android engineer uses divide‑and‑conquer, MVP with Clean Architecture, and Jetpack components such as LiveData and ViewModel to break down a highly coupled payment module into reusable view components, improve data flow, and simplify testing and maintenance.

AndroidArchitectureDivide and Conquer
0 likes · 10 min read
Applying Divide‑and‑Conquer and Jetpack Architecture to Decouple Complex Payment Flows in Android
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Sep 17, 2020 · Mobile Development

Android Audio Visualization: From Fourier Transform to Custom Visualizer Implementation

The article explains Android audio visualization by decoding PCM data, applying Fourier and Fast Fourier transforms to obtain frequency spectra, comparing the built‑in Visualizer API with a custom JNI‑based implementation, and detailing FFT processing, smoothing, buffering, and Canvas rendering techniques for smooth, performant visual effects.

AndroidAudio VisualizationBufferQueue
0 likes · 11 min read
Android Audio Visualization: From Fourier Transform to Custom Visualizer Implementation
Amap Tech
Amap Tech
Sep 14, 2020 · Operations

JaCoCo Code Coverage Instrumentation Principles and Practices for Android SDK

The article explains how to use JaCoCo to instrument Android SDK classes—detailing probe insertion strategies for methods, branches, and code blocks, offline and Ant/Gradle integration, building instrumented packages, collecting execution data, and generating HTML coverage reports without modifying source code.

ASMAndroidJaCoCo
0 likes · 17 min read
JaCoCo Code Coverage Instrumentation Principles and Practices for Android SDK
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 11, 2020 · Fundamentals

Understanding the Android Input Subsystem: Definitions, Initialization, Registration, Matching, and Event Transmission

The Android input subsystem, built on the Linux kernel, abstracts devices with input_dev structures, handlers with input_handler callbacks, and bridges them via input_handle, initializing core services, registering devices and handlers, matching them, transmitting events through buffers, and delivering them to user space via evdev and the InputFlinger framework.

AndroidInput Subsystemdevice-drivers
0 likes · 10 min read
Understanding the Android Input Subsystem: Definitions, Initialization, Registration, Matching, and Event Transmission
Xianyu Technology
Xianyu Technology
Sep 3, 2020 · Mobile Development

Modularization and Cross‑Process Communication Strategies for Xianyu's Flutter Application

Xianyu tackles Flutter’s slow hybrid compilation and native‑module integration pain by introducing a minimal‑shell modular architecture and a two‑phone cross‑process setup that falls back from MethodChannel to socket communication, speeding builds, isolating components, and improving data consistency while adding maintenance and device constraints.

AndroidCross-ProcessFlutter
0 likes · 9 min read
Modularization and Cross‑Process Communication Strategies for Xianyu's Flutter Application
OPPO Amber Lab
OPPO Amber Lab
Aug 31, 2020 · Information Security

Android Kernel Hooking: Bypassing GKI Limits & Memory Protection

This article examines the security challenges of Android and IoT devices built on ARM/ARM64 platforms, explains how Google's Generic Kernel Image (GKI) restricts kernel modifications, and provides detailed techniques—including memory‑page attribute manipulation, remap_pfn_range, and assembly‑level hook implementations—to safely inject custom functionality into the kernel while addressing write‑protection, concurrency, and module‑unloading issues.

ARMAndroidGKI
0 likes · 15 min read
Android Kernel Hooking: Bypassing GKI Limits & Memory Protection
Youzan Coder
Youzan Coder
Aug 26, 2020 · Mobile Development

How We Built a Real‑Time Crash Feedback Platform for Mobile Apps

This article details the design and implementation of a comprehensive crash feedback platform for mobile applications, covering the motivation behind replacing third‑party services, the system architecture using Flink, Kafka and HBase, crash interception on Android, automated grouping and assignment, version filtering, daily reporting, and future enhancements.

AndroidFlinkKafka
0 likes · 15 min read
How We Built a Real‑Time Crash Feedback Platform for Mobile Apps
vivo Internet Technology
vivo Internet Technology
Aug 19, 2020 · Mobile Development

Why Android Images Cause OOM: Memory Usage, DPI, and Glide Tips

This article explains how different Android versions handle image memory, clarifies screen size, density, and resolution concepts, shows how folder placement and bitmap formats affect RAM usage, and provides practical Glide configuration to prevent out‑of‑memory crashes.

AndroidBitmapGlide
0 likes · 11 min read
Why Android Images Cause OOM: Memory Usage, DPI, and Glide Tips
Xianyu Technology
Xianyu Technology
Aug 19, 2020 · Mobile Development

Optimizing Xianyu Android App Cold Start: Cutting Launch Time by Half

By establishing measurable standards, profiling the launch flow, and applying task‑governance techniques—delaying, shrinking and splitting blocking tasks—plus home‑page shortcuts like ad pre‑fetch, background view creation and SharedPreferences caching, Xianyu’s Android cold‑start on low‑end phones dropped from about ten seconds to under five, with the first screen in ~1.3 seconds and full launch in 4.5 seconds.

AndroidMobile DevelopmentPerformance Optimization
0 likes · 10 min read
Optimizing Xianyu Android App Cold Start: Cutting Launch Time by Half
Watermelon Video Tech Team
Watermelon Video Tech Team
Aug 19, 2020 · Mobile Development

Analyzing Native Memory OOM in Android Camera Implementations and Effective Mitigation Strategies

This article investigates native memory out‑of‑memory crashes on certain Android devices caused by excessive CameraMetadata allocations, explains how delayed finalization and GC timing exacerbate the issue, and proposes proactive memory release and GC triggering techniques that dramatically reduce crash rates.

AndroidCameraNative Memory
0 likes · 13 min read
Analyzing Native Memory OOM in Android Camera Implementations and Effective Mitigation Strategies
Youzan Coder
Youzan Coder
Aug 12, 2020 · Mobile Development

How a Single Config Line Enables Dynamic Page Redirection in Mobile Apps

This article explains the background pain points of hard‑coded cross‑stack navigation in a mobile app, describes a dynamic routing component built on URL interception, regex matching and replacement, shows Kotlin and iOS implementations, and demonstrates real‑world cases in an app center and order module.

AndroidKotlindynamic-configuration
0 likes · 13 min read
How a Single Config Line Enables Dynamic Page Redirection in Mobile Apps
Open Source Linux
Open Source Linux
Aug 11, 2020 · Fundamentals

From Unix to Android: Tracing the Evolution of Modern Operating Systems

Explore the lineage from the 1969 birth of UNIX through the creation of Linux, the emergence of Apple's iOS, and the development of Android, highlighting key milestones, contributors, and how these systems interconnect as the foundational kernels of today’s major platforms.

AndroidLinuxOperating Systems
0 likes · 4 min read
From Unix to Android: Tracing the Evolution of Modern Operating Systems
JD Retail Technology
JD Retail Technology
Aug 10, 2020 · Mobile Development

Source Code Analysis of Android Lifecycle, LiveData, and ViewModel

This article provides a detailed source‑code analysis of Android Jetpack’s Lifecycle, LiveData, and ViewModel components, explaining their architecture, usage examples, internal mechanisms, and offering practical techniques such as bottom‑up and top‑down analysis, code navigation tips, and unit‑test strategies for developers.

AndroidLiveDataMobile Development
0 likes · 38 min read
Source Code Analysis of Android Lifecycle, LiveData, and ViewModel
Youku Technology
Youku Technology
Aug 10, 2020 · Mobile Development

Youku Player Architecture Redesign Based on Pipeline Pattern

Youku’s player was rebuilt with a pipeline‑pattern architecture that unifies playback stages into a modular framework, enabling plug‑in customization, multi‑source support, reduced memory and startup overhead, clearer structure, and improved stability and extensibility for future business innovations.

AndroidCache PipelineMobile Development
0 likes · 11 min read
Youku Player Architecture Redesign Based on Pipeline Pattern
iQIYI Technical Product Team
iQIYI Technical Product Team
Aug 7, 2020 · Mobile Development

64-bit Adaptation Practices for iQIYI Android App

iQIYI migrated its Android app to 64‑bit by configuring ABI selection, delivering native libraries via universal or split APKs, plugin packages, and a cloud‑based SO distribution platform, adding a front‑end SDK and back‑end publishing service, and applying size‑reduction and hot‑fix optimizations, resulting in faster startup, better performance, and a unified library management workflow.

64-bitABIAndroid
0 likes · 10 min read
64-bit Adaptation Practices for iQIYI Android App
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Aug 7, 2020 · Mobile Development

Android Thermal Management System: Thermal HAL 2.0 and Service Framework Analysis

Android’s Thermal Management System, introduced in Android 10, uses Thermal HAL 2.0 and a layered service framework to abstract hardware sensors, let apps and system components query temperatures or register callbacks via PowerManager, and enable manufacturers to implement HIDL interfaces and configuration files that drive the thermal‑engine process to throttle CPU/GPU frequencies, charging rates, and other resources when predefined temperature thresholds are exceeded.

AndroidAndroid 10Hardware Abstraction Layer
0 likes · 8 min read
Android Thermal Management System: Thermal HAL 2.0 and Service Framework Analysis
vivo Internet Technology
vivo Internet Technology
Aug 5, 2020 · Mobile Development

An ORM Wrapper for Native SQLite in Android SDKs

The article presents Sponsor, a lightweight ORM‑style wrapper for Android’s native SQLite that uses runtime annotations and dynamic proxies to generate Retrofit‑like, type‑safe CRUD APIs, automatically handling table creation, upgrades, and threading while keeping performance overhead negligible for SDK developers.

AndroidORMPerformance
0 likes · 18 min read
An ORM Wrapper for Native SQLite in Android SDKs