系列文章《Android 工程师的 100 篇进阶笔记》第 37 篇:Android 无障碍开发:构建包容性应用

上一篇对比了图片加载框架,这篇聊一个被大量开发者忽略但越来越重要的主题——无障碍(Accessibility)。Google Play 对无障碍有明确要求,国内也在逐步推进信息无障碍标准。这不是"做了锦上添花"的事,是"不做会被拒"的事。 为什么需要无障碍 全球有超过 10 亿残障人士,其中视力障碍

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 36 篇:图片加载框架对比:Coil vs Glide 深度解析

上一篇聊了主题系统,这篇继续 UI 方向,聊一个每个 App 都要面对的选择——图片加载框架。Glide 是老牌选手,Coil 是后起之秀。到底该选哪个? 两者的背景 Glide 由 Google 的 Sam Judd 创建,2014 年开源,经过多年迭代,功能极其全面。在国内使用率极高,几乎成了"

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 35 篇:Android 主题系统:Material 3、Dynamic Color 与暗色模式适配

上一篇聊了通知体系,这篇聊一个 UI 工程师每天都在打交道但很少深入的东西——主题系统。从 Material Design 1 到 3,从硬编码颜色到 Dynamic Color,Android 的主题方案迭代了好几轮。 Material Design 的演进 Material 1:Google I

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 34 篇:Android 通知体系:Channels、Styles 与最佳实践

上一篇讲了进程生命周期,这篇聊一个开发者天天碰但很少深入的主题——通知。Android 8.0 引入 Channel 后,通知管理发生了质的变化。通知样式、优先级、分组、权限,每一步都有坑。 NotificationChannel 是什么 Android 8.0(API 26)之前,通知直接发就行,

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 33 篇:Android 进程生命周期与 Low Memory Killer

上一篇讲了 Handler 消息机制,这篇往上一层——进程。你的 App 跑在哪个进程?系统怎么决定杀哪个进程?LMK(Low Memory Killer)的工作原理是什么?这些知识在做保活、后台任务、性能优化时都绕不开。 Android 进程优先级 系统把进程分为五个优先级层次,从高到低: 前台进

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 32 篇:Handler/Looper/MessageQueue:Android 消息机制深度剖析

上一篇讲了存储方案迁移,这篇回到 Android 最核心的机制之一——消息驱动模型。Handler 大家天天用,但 Looper 怎么轮询的?MessageQueue 内部什么数据结构?为什么主线程调 Looper.loop() 不会卡死? 整体架构 Android 的消息机制由四个角色组成: Ha

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 31 篇:Android 存储演进:从 SharedPreferences 到 DataStore 的迁移之路

上一篇我们聊了 KMM 的跨平台实践,这篇把视角拉回本地存储。SharedPreferences 陪伴 Android 开发者十几年了,但 Google 自己也在推 DataStore。到底要不要迁移?怎么迁?踩了什么坑? 为什么 SharedPreferences 不够用了 先说结论:SP 不是不

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 30 篇:Kotlin Multiplatform Mobile:共享业务层代码实战

跨平台方案很多:Flutter、React Native、Compose Multiplatform。Kotlin Multiplatform Mobile(KMM)走的是另一条路:UI 层各平台自己写,业务逻辑共享。 一、KMM 适合什么场景 KMM 不是“写一次跑所有平台”。它更适合: 两端业务

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 27 篇:Android 网络优化:连接复用、缓存与弱网适配

网络请求是 App 耗电和流量的主要来源之一。同样的接口,优化前后可能差几倍。今天聊一些工程上立竿见影的做法。 一、连接复用:HTTP/2 和连接池 val client = OkHttpClient.Builder()     .protocols(listOf(Protocol.HTTP_2, 

Administrator Administrator 发布于 2026-08-25

系列文章《Android 工程师的 100 篇进阶笔记》第 26 篇:Android 包体积优化:Dex、资源、Assets 与混淆实战

包体积直接影响下载转化率和更新率。每多 1MB,都可能让一部分用户放弃下载。包体积优化不是一次性工作,是持续监控的过程。 一、APK / AAB 里都有什么 用 Android Studio 的 APK Analyzer 打开一个 APK,通常会看到: classes.dex:编译后的字节码 res

Administrator Administrator 发布于 2026-08-25
上一页 下一页