Gradle 构建慢的问题,有人找到了新解法 Gradle 构建慢的问题,有人找到了新解法 「Gradle 构建慢的问题,有人找到了新解法」 从那个熟悉的 coffee break 说起 每个 Android 开发者都经历过这种时刻:按完 Run 键,看着 Gradle 进度条开始蠕动,然后起身去接水、上厕所、跟同事寒暄一圈回来,发现还在 "R 2026-05-28 随笔 4
Dynamic Feature Module 上线一年后的真实体验 Dynamic Feature Module 上线一年后的真实体验 「Dynamic Feature Module 上线一年后的真实体验」 去年 Q2 我们把一个 28MB 的安装包拆成了 base + 3 个 dynamic feature module,当时团队内部的预期很乐观:用户冷启动只下载 2026-05-28 Android 1
这几个 GitHub 仓库,帮我省了不少时间 这几个 GitHub 仓库,帮我省了不少时间 这几个 GitHub 仓库,帮我省了不少时间 从一次 CI 崩溃说起 去年维护一个老项目时,我们的 GitHub Actions 流水线突然开始随机失败。错误日志很干净,没有任何 stack trace,只有一行 "Process completed w 2026-05-28 tool 1
Compose Multiplatform 真的能用吗?踩坑记录 Compose Multiplatform 真的能用吗?踩坑记录 Compose Multiplatform 真的能用吗?踩坑记录 从一次失败的 Demo 开始 去年十月份,手边一个内部工具需要同时支持 Android 和桌面端。团队里就我一个 Android 开发,再招一个 Desktop 的人不 2026-05-27 Android 1
某大厂 App 又崩了,根因可能不是你想的那样 某大厂 App 又崩了,根因可能不是你想的那样 某大厂 App 又崩了,根因可能不是你想的那样 从一次典型的"服务异常"说起 今年三月份,某头部电商 App 在晚间流量高峰时段出现了大规模服务不可用,用户反馈集中在商品详情页加载失败、购物车结算异常、优惠券无法领取几个场景。官方事后给出的公告是"部分 2026-05-27 随笔 1
Android 开发值得关注的 newsletter 和播客 Android 开发值得关注的 newsletter 和播客 Android 开发值得关注的 newsletter 和播客 信息过载时代的筛选困境 Android 开发者面临的一个真实问题是:Google 官方博客、Medium 技术文章、Twitter/X 上的碎片化讨论、GitHub 的 rel 2026-05-27 tool 1
Kotlin 协程的 Job 和 SupervisorJob 差别在哪 Kotlin 协程的 Job 和 SupervisorJob 差别在哪 Kotlin 协程的 Job 和 SupervisorJob 差别在哪 去年维护一个后台任务调度模块的时候,我踩到了一个协程异常处理的坑。当时代码大概长这样: val scope = CoroutineScope(Job() + 2026-05-26 Android 5
Kotlin 2.0 正式发布,迁移要注意什么 Kotlin 2.0 正式发布,迁移要注意什么 「Kotlin 2.0 正式发布,迁移要注意什么」 Kotlin 2.0 在 2024 年 5 月 GA 了,JetBrains 憋了快两年的大版本终于落地。我先把结论放在前面:这个版本最值得关注的不是新语法糖,而是编译器后端彻底换成了 K2,以及随之 2026-05-26 随笔 5
我日常用的 Android 调试工具清单 我日常用的 Android 调试工具清单 我日常用的 Android 调试工具清单 Android 开发的调试工具生态在过去几年发生了不小的变化。Google 官方工具链在持续迭代,第三方工具也在特定场景下找到了自己的位置。这篇文章想聊的不是那种"十大必备工具"式的罗列,而是我实际工作中高频使用、踩 2026-05-26 tool 0
Android 面试题整理,来自真实面经 Android 面试题整理,来自真实面经 「Android 面试题整理,来自真实面经」 为什么我又开始整理面试题了 去年帮团队面了大概三十多个 Android 开发,从 P5 到 P7 都有,发现一个挺尴尬的现象:很多人简历上写着"精通 Kotlin/Compose/性能优化",真坐下来聊半小时,能 2026-05-26 tool 1