Moshi 的代码生成,KSP 适配后的编译速度 Moshi 的代码生成,KSP 适配后的编译速度 Moshi 的代码生成,KSP 适配后的编译速度 从 KAPT 的编译噩梦说起 如果你用 Kotlin 写 Android 项目超过三年,大概率经历过 KAPT 的折磨。Moshi 作为 Square 出品的 JSON 解析库,早期版本依赖 KAPT 2026-06-21 tool 4
Android 开发者的工具链成本,哪些可以省 Android 开发者的工具链成本,哪些可以省 Android 开发者的工具链成本,哪些可以省 去年 JetBrains 宣布 IntelliJ IDEA 和 Android Studio 的授权策略调整时,我在一个开发者群里看到有人转发了一条消息,说"终于不用折腾破解了,直接换 VS Code"。 2026-06-21 随笔 5
App Startup 库真的能优化启动吗,实测数据 App Startup 库真的能优化启动吗,实测数据 App Startup 库真的能优化启动吗,实测数据 从一个真实的启动崩溃说起 去年下半年我在处理一个线上启动崩溃时,第一次认真审视了 App Startup 这个库。当时的问题是:我们在 Application.onCreate 里初始化了一个 2026-06-21 Android 6
WireShark 抓包分析移动应用网络请求 WireShark 抓包分析移动应用网络请求 WireShark 抓包分析移动应用网络请求 WireShark 这个工具在桌面网络分析领域几乎是标配,但把它拉到移动应用开发场景里,事情就变得复杂不少。我见过太多开发者以为装个 WireShark 就能看穿 App 的所有网络行为,结果在 HTTPS 2026-06-21 tool 6
Compose for iOS 的进展,真的能一套代码双端吗 Compose for iOS 的进展,真的能一套代码双端吗 「Compose for iOS 的进展,真的能一套代码双端吗」 Google I/O 2024 上那条"Compose for iOS 进入 Alpha"的官宣,让我手里的咖啡凉了一半。不是激动,是那种"又来了"的疲惫。KMM(Kotl 2026-06-18 随笔 11
Compose 的副作用 API:LaunchedEffect、DisposableEffect、SideEffect 到底什么时候用 Compose 的副作用 API:LaunchedEffect、DisposableEffect、SideEffect 到底什么时候用 Compose 的副作用 API:LaunchedEffect、DisposableEffect、SideEffect 到底什么时候用 从一个内存泄漏说起 去年维护 2026-06-18 Android 8
JRebel for Android 的热部署方案还在吗 JRebel for Android 的热部署方案还在吗 JRebel for Android 的热部署方案还在吗 JRebel 这个名字在 Android 开发圈子里已经沉寂了好几年。如果你是从 2015 年前后入行的开发者,可能还记得 ZeroTurnaround 公司那个绿色的火箭图标,以及它 2026-06-18 tool 7
AI 助手的代码审查能力,能替代 Code Review 吗 AI 助手的代码审查能力,能替代 Code Review 吗 AI 助手的代码审查能力,能替代 Code Review 吗 从 GitHub Copilot Workspace 的翻车现场说起 今年 3 月,GitHub 把 Copilot Workspace 推到了公测阶段,宣传口径很响亮:自然语 2026-06-17 随笔 6
adb 命令的高级用法,不只是安装卸载 adb 命令的高级用法,不只是安装卸载 「adb 命令的高级用法,不只是安装卸载」 大多数人第一次接触 adb 是在 Android Studio 的 logcat 窗口里,或者照着某个教程敲下 adb install app.apk。这个工具在 Android 开发工具链里存在感极强,但用法又极其 2026-06-17 tool 15
StorageManager 的存储空间查询,Scoped Storage 后的 API StorageManager 的存储空间查询,Scoped Storage 后的 API 「StorageManager 的存储空间查询,Scoped Storage 后的 API」 Android 10 引入 Scoped Storage 的时候,大多数开发者都在关注文件读写权限怎么改、Media 2026-06-17 Android 3