上一篇讲了前台服务与后台治理,切到 WebView——App 里嵌入 H5 页面是高频需求(电商活动页、H5 营销、报名表)。但 WebView 是 Android 性能重灾区,做不好白屏、首屏慢、内存泄漏一起来。 WebView 的性能问题 WebView 第一次初始化(Cold Start)可能
上一篇讲了 Systrace/Perfetto 性能分析,这篇切到 Android 后台治理——前台服务(Foreground Service)、后台限制、WorkManager 选型。Android 14/15 在这一块越来越严格,是 App 上线被驳回的高频原因之一。 Android 后台策略演
上一篇讲了 MVI 架构,切换到性能分析工具——Systrace 与 Perfetto。每个 Android 工程师都该会 Systrace 抓问题,但 Perfetto 是更强的下一代工具。这篇把它们一起讲清楚。 Systrace 是什么 Systrace 是 Android 自带的性能分析工具,
上一篇讲了离线优先架构,回到 App 架构——MVI。MVVM 已经"烂大街",但 MVI 的"单向数据流"解决了 MVVM 一直搞不定的事:状态一致性、可预测、可测试。这一篇用 Orbit 框架做实战示例。 MVI 是什么 MVI = Model-View-Intent,是 MVVM 的"加强版"
上一篇讲了 R8 深度优化,进入数据存储层——离线优先(Offline-First)。移动端网络不稳定,离线设计不是"边角案例"而是"核心场景"。这一篇看 Realm 和 SQLDelight 两种本地存储方案如何在离线优先架构里发挥作用。 什么是离线优先 离线优先的核心思想:UI 不应该等网络,本
系列文章《Android 工程师的 100 篇进阶笔记》第 62 篇 上一篇讲了 APK 体积整体优化,这篇专攻 R8/ProGuard 的进阶能力。除了默认压缩,还有混淆字符串、删除调试日志、Keep 规则调优这些"重武器"。 R8 vs ProGuard Android 长期用 ProGuard
上一篇讲了屏幕适配,切到包体积问题。APK 每涨 1MB,用户下载转化率掉 1%。这个数字看着小,乘以亿级 DAU 就是钱。这一篇把所有能瘦身的手段系统过一遍。 APK 的组成结构 分析 APK 第一步是看里面有什么: ./gradlew app:assembleRelease ls -lh app
上一篇讲了 Choreographer 卡顿监控,回到一个永恒话题——屏幕适配。Android 手机分辨率从 720p 到 4K、纵横比从 18:9 到瀑布屏,怎么做一套 UI 看起来都一样?今日头条的方案是业内最成熟的实践之一。 屏幕适配的三个维度 宽度:同 dp 在不同 DPI 下物理大小不同
上一篇讲了 Android 14/15 的适配,回到性能监控这个常青主题。卡顿是用户最直观的"烂体验",但怎么量化它?Choreographer 就是系统给的官方答案——理解它就能做精确的卡顿监控。 帧率 vs 流畅度 很多 App 显示"30/60 FPS"作为流畅度指标,但 FPS 高不代表不卡
上一篇讲了 Android Automotive,回到手机平台——Android 14/15 带来了大量新能力,也打破了不少兼容代码。这一篇把官方更新梳理一遍,重点是"哪些会影响你的 App"。 Android 14(API 34)的关键变化 1. 前台服务新规则 必须声明 type,否则启动 FG