前言 纯端侧 LLM 答不了"我们公司今年报销政策是啥"——因为模型知识停在训练截止日。RAG(Retrieval-Augmented Generation)通过"先检索本地知识库、再让 LLM 回答"的流程,把私有数据接入 LLM。这一篇拆解:如何在 Android 工程里搭一个能用的端侧 RAG
前言 "端侧 LLM"在 2025-2026 年真正从 PPT 落地到手机里。Qualcomm 8 Gen 3 / MediaTek Dimensity 9300+ / Apple A17 之后,几乎所有旗舰机都能跑 1B-3B 参数的量化模型。本篇不讲理论推导,讲清楚——哪些模型在 Android
前言 线上监控发现某页面内存曲线像锯齿,每 30 秒一次峰值后回落但基线在涨——典型"内存抖动"。这种 bug 不像崩溃那么显眼,但时间一长会被系统 LMK 杀掉。本篇用一个真实排查流程,讲清楚 Android Studio Memory Profiler + LeakCanary + dumpsy
前言 2024 年起,越来越多厂商把鸿蒙作为默认系统,国内 App 上架、应用市场、日常开发都开始要求"鸿蒙版"。但鸿蒙生态不会替代 Android,至少未来 3-5 年内一定是双系统共存。这篇从工程师视角,拆清楚两套体系的差异、迁移路径,以及哪些技能可以复用、哪些要重学。 一、生态定位差异
前言 2021 年 PIPL(《个人信息保护法》)落地,2023 年起应用市场(华为、小米、应用宝、OPPO、vivo)的合规审查越来越刚性。一个不留神,App 就被下架或拒绝上架。这篇不讲法条字眼,从工程角度讲清楚——一个 Android 工程应该怎么改,才能在审核员眼里"看起来合规"。 一、PI
前言 K2 编译器把编译阶段砍掉一半时间后,你会发现构建链路的另一段——配置与缓存——才是最拖时间的部分。Gradle 8.x 系列最大的一条主线就是 Configuration Cache(配置缓存),它把"配阶段"独立出来持久化。本篇从工程实战角度拆开讲。 一、Gradle 构建的三个阶段 理解
前言 2024 年 Kotlin 团队把 K2 编译器标记为稳定版(Stable),2025 年正式默认开启。这个动作意味着——过去几年我们一直在调试的"老 K"前端,正式退役。换来的不只是编译快一点,而是整个类型系统、解析器的重写。 这一篇不扯官方公告里的漂亮话。我把日常开发会撞到的几个分水岭摆出
上一篇讲了 Scoped Storage,回到工程方法学——Android 应用架构。这是系列文章第 70 篇,正好用一篇文章把"架构演进"系统梳理一遍。从 MVP 到 MVVM 到 MVI 到 Clean Architecture,每个阶段的痛点、收益、适用场景都讲清楚。 为什么架构重要 好的架构
上一篇讲了 Compose 编译器原理,进入 Android 存储生态——Scoped Storage。Android 10 引入的存储沙箱彻底改变了 App 访问文件的方式,旧项目迁移一开始很痛,但理解后其实更简洁。 Android 存储发展的三个阶段 1. Android 4.4 之前(遗留)
上一篇讲了 WebView 优化,回到 Compose——理解 Compose 的工作原理能让"调 API"的工程师变成"懂魔法"的工程师。Compose 的编译器插件是怎么把函数变成 UI 的?这篇拆开说。 Compose 编译器的"魔法" Compose 不是普通的 Kotlin 函数调用。每个