资讯动态

《离线AI安卓APP》附录 D 速查索引与阅读指南

发布时间:2026/10/18 4:43:49 来源:尧图企业网站定制
这个附录解决两个问题“我想查某个主题”→ 看 D.1按主题索引“这个文件在哪几章被讲过”→ 看 D.2按工程文件索引另外还有D.3 阅读指南路线、节奏、每章前置知识自检和D.4 一张从零到发布的全景图。D.1 按主题索引用法想到一个问题查这张表找到章节。D.1.1 Android 平台主题章节App 是怎么启动的ch04.1AndroidManifest.xml每个字段ch04.2applicationIdvsnamespacech04.3Activity 生命周期ch04.4旋转屏幕为什么不丢数据ch04.5ViewModel存活边界ch04.5、ch09资源系统res/ch05自适应图标ch05.3为什么只换 legacy 图标无效ch05.4密度dpich05.5资源路径混淆ch05.6、ch02 坑 3DataStore持久化ch11FileProvider分享ch04.2.3、ch12.7ActivityResultContractsch12.8TTS 朗读ch12.1–12.5剪贴板ch12.6包可见性queriesch04.2.2作用域存储为什么只有 Urich12.8.3D.1.2 Compose 与状态主题章节声明式 vs 命令式ch06.1Composable约定ch06.2状态提升ch06.3重组与rememberch06.4LaunchedEffect与 keych06.5Modifier与顺序ch06.6页面骨架Scaffoldch07.1抽屉ModalNavigationDrawerch07.1.3列表与keych07.2.3状态列表SnapshotStateListch09.4不可变更新与刷新ch03.4.5、ch09.4.3对话框状态设计ch07.7空状态设计ch07.4.3手写 Markdownch07.6D.1.3 异步与并发主题章节为什么不能用Threadch08.1suspend/launch/withContextch08.2三个调度器的边界ch08.2.4单线程调度器ch08.2.5Flow 是冷流ch08.3.3flowOn切上游ch08.4协作式取消ch08.5、ch10.2CancellationException必须重抛ch10.4catch不重抛的陷阱ch08.6节流刷新 UIch08.7结构化并发与 Job 树ch10.1ANR 与主线程阻塞ch10.5资源收尾清单ch10.6状态容器为什么抽出来ch09.1工作副本 vs 快照ch09.5.first()vscollectch09.6D.1.4 JNI 与 C主题章节为什么需要 JNIch13.1external fun声明ch13.2.1JNI 函数名规则ch13.3extern C为什么必须ch13.4JNIEnv与字符串转换ch13.5全局状态与互斥锁ch13.6为什么每个方法都加锁ch13.6.2、ch13 练习 2CMake 把 C 编进.soch13.7-fsyntax-only快速校验ch13.9、ch02.7GGUF 文件结构ch14.2小端序ch14.2.2、附录 A.3.3元数据类型系统ch14.3短读陷阱ch14.7DEFAULT_SKIP_KEYSch14.8D.1.5 模型与推理主题章节量化是什么ch01.2.2GGUF 与元数据ch01.2.3、ch14端侧推理ch01.2.4token 与上下文长度ch01.2.5加载模型四个对象ch15.1n_ctx/n_batch/ 线程数ch15.4KV cache 占多少内存会算ch15.5prepare失败路径清理ch15.7.2unload释放后清零ch15.8.2prefill vs decodech16.1batch 与 positionch16.3want_logit优化ch16.3.3generateNextToken逐行ch16.4三个停止条件ch16.4.6UTF-8 缓存防乱码ch16.5chat templatech17.1–17.3第二轮输出数字24 字节事故ch17.5前缀比较 vs 长度切片ch17.4.2、ch17.6移窗context shiftch18.3位置错乱事故ch18.4位置不变量检查ch18 练习 5temperature / top-k / top-pch19.2–19.5采样参数六环链路ch19.6改了不生效排查ch19.7D.1.6 构建与发版主题章节五个组件JDK/SDK/NDK/CMake/Gradlech02.1版本对齐ch02.4local.properties/gradle.propertiesch02.3产物路径会变ch02.5.4、ch20.6.2Gradle vs AGPch20.2variant 与buildTypesch20.3为什么关 R8ch20.3.2externalNativeBuildch20.4CMake 开关ch20.5ABI 过滤发生在哪一步ch20.7半残 ABI 切片事故ch20.8签名方案 v1/v2/v3/v4ch21.2keystore 为什么最重要ch21.4发版五步ch21.6校验五条清单ch21.7确认修复进包MD5ch21.7.5覆盖安装的坑ch21.8D.1.7 方法论主题章节五步排查框架ch22.1最小对照实验ch22.1.3静默失败四类ch22.2不变量 断言ch22.8.3纯逻辑模拟ch22.8.4二分法ch22.8.5根因分析报告模板ch22.9需求裁剪MVPch23.2最小架构ch23.3加回功能的顺序ch23.10分层思维 / 可验证 / 裁剪ch23 结语D.1.8 基础常识补课主题章节编程最基本概念附录 A.1命令行与路径附录 A.2位/字节/十六进制/小端序附录 A.3UTF-8 与乱码原理附录 A.4JSON 与序列化附录 A.5CPU/内存/进程/线程/Binder附录 A.6编译与 APK附录 A.7Git 最小必需附录 A.8D.2 按工程文件索引用法你看到一个文件想知道它在哪几章被讲过。D.2.1 应用模块app/文件被讲的章节app/build.gradle.ktsch01.1、ch02、ch04.3、ch20.3/20.7/20.9app/src/main/AndroidManifest.xmlch04.2MainActivity.ktch04.1/4.2/4.4/4.6ui/MainScreen.ktch01.1、ch19.6ui/MainScreenState.kt1132 行ch09 全章、ch08.6、ch10.7、ch12.6、ch19.6ui/ChatScreen.kt419 行ch06.3、ch07 全章ui/MessageList.ktch06.5、ch07.2ui/MessageItem.ktch07.5ui/MarkdownText.kt383 行ch07.6ui/InputArea.ktch06.2/6.3ui/SettingsScreen.ktch19.6model/ModelInfo.ktch03.2/3.4/3.6model/Message.ktch03.4.2model/ChatSession.ktch03.4.3、ch11.6util/AppSettings.ktch03.5、ch11、ch19.6util/ThinkStripper.ktch03.7、ch16util/TTSManager.kt412 行ch10.6、ch12util/ModelImporter.ktch10.3半成品事故、ch14.4util/ModelManager.ktch11.3读改写事故、ch11.4util/ChatSessionStore.ktch11.2/11.7util/ChatExporter.ktch11.8res/mipmap-anydpi-v26/ic_launcher.xmlch05.3res/drawable/ic_launcher_background.xmlch05.3.5res/values/{strings,colors,themes}.xmlch05.7res/xml/file_paths.xmlch04.2.3、ch12.7D.2.2 推理库模块lib/文件被讲的章节lib/build.gradle.ktsch20.4、ch20.7.1InferenceEngine.kt接口 状态机ch01.5.6internal/InferenceEngineImpl.kt338 行ch01.5.6、ch08 全章、ch10.4/10.5、ch13.2、ch19.6internal/gguf/GgufMetadataReaderImpl.kt596 行ch14 全章gguf/GgufMetadataReader.ktch14.8gguf/FileType.ktch14.5gguf/GgufMetadata.ktch14.3src/main/cpp/ai_chat.cpp882 行ch13 全章、ch15 全章、ch16 全章、ch17.4、ch18.3、ch19.6src/main/cpp/logging.hch02.7src/main/cpp/CMakeLists.txtch13.7、ch20.6D.2.3 构建与配置文件被讲的章节settings.gradle.ktsch01.5.5gradle.propertiesch02.3.2local.propertiesch02.3.1gradle/libs.versions.tomlch02.4keystore.properties不进版本库ch21.5运行命令.txt发版 runbookch21 全章BUG_AUDIT_2026-09-10.md审查报告ch22.5/22.8.6D.2.4 本书自带文件说明出处book/code/ch01/count-lines.ps1统计工程代码行数ch01.4book/code/ch03/Playground.ktKotlin 语法示例ch03book/code/ch04/LifecycleDemo.kt生命周期模拟ch04.7book/code/ch05/icon_build.py生成全套图标ch05.12book/code/ch08/FlowCancelSim.kt取消行为模拟ch08.9book/code/ch14/gguf_header_reader.py解析 GGUF 头ch14.9book/code/ch23/mini-*最小工程骨架ch23 全章book/code/verify_citations.py行号引用复核器README「行号引用会漂移」D.3 阅读指南D.3.1 三条路线路线 A完全零基础推荐这条附录 A知识点补课只读你缺的 ↓ ch01建立全局观慢读 ↓ ch02只求跑通构建别纠结每个报错 ↓ ch03Kotlin 速成**这章要慢读** ↓ ch04 → ch05 → ch06 → ch07界面部分 ↓ ch08 → ch09 → ch10 → ch11 → ch12异步与状态部分 ↓ ch13 → ch14 → ch15 → ch16原生与推理 ↓ ch17 → ch18 → ch19推理进阶 ↓ ch20 → ch21构建与发版 ↓ ch22方法论 ↓ ch23动手做最小版路线 B会别的语言没写过 Androidch01 → ch02 → ch03快过语法差异→ ch04 → ch06 → ch09 → ch13 → ch14 → ch16先打通能出字这条主线 → 再回头补 ch07 / ch08 / ch11路线 C会 Android想搞懂端侧推理ch01只看 1.5 架构 1.3 规模 → ch13 → ch14 → ch15 → ch16 → ch17 → ch18 → ch19 → ch22 前两部分按需查D.3.2 每章的前置知识自检读每一章前自查这两三项。不满足就先补。章前置自检ch01无最重要的一章谁都能读ch02附录 A.2命令行/路径ch03附录 A.1编程基本概念ch04ch03Kotlin 基本语法ch05ch04知道 Manifest 在哪ch06ch04 ch05知道 App 怎么起来、资源怎么引用ch07ch06状态驱动 UI 的心智模型ch08ch06知道重组是什么ch09ch08Flow 与 cancelch10ch08 ch09ch11ch09状态容器ch12ch09 ch10ch13ch03能看懂 Kotlin 函数附录 A.6进程/线程ch14ch13附录 A.3字节/小端序ch15ch14ch16ch15附录 A.4UTF-8ch17ch16ch18ch16位置管理ch19ch16采样在 decode 里ch20ch02 ch13ch21ch20ch22ch17 ch18 ch08会用到这三章的事故ch23全书D.3.3 卡住了怎么办四层兜底第 1 层该章末尾的「常见错误与排查」表 ↓ 没有 第 2 层附录 CFAQ35 个常见问题 ↓ 没有 第 3 层附录 B术语表确认你没理解错某个词 ↓ 还没有 第 4 层ch22 的五步框架自己排查 复现 → 隔离变量 → 最小对照 → 修正 → 回归D.3.4 三条高效读法读法怎么做每章至少跑一次动手验证那是看懂和学会的分界先画结构图再读细节比如读 ch09 先画状态清单读 ch16 先画循环图把结论讲给别人听讲不顺的地方 没真懂的地方D.3.5 三条无效读法请避免无效为什么只读不动手读代码能懂是什么写代码才知道为什么追求读完而不是读透每章都有勾选清单——按那个自测不要按页数遇到不懂就停下来查会打断理解主线。标记后继续读完一节再回来查D.4 一张全景图从零到发布把全书串成一条线这也是本书的目录结构【第一部分起步】ch01–ch03 ch01 项目全景 ← 知道要做什么、有哪些层、代码量多少 ch02 环境与构建 ← 能把它编出来 ch03 Kotlin 速成 ← 能读懂它的语言 【第二部分应用开发】ch04–ch12 ch04 应用骨架 ← App 怎么被系统拉起来 ch05 资源系统 ← 图标/文字/颜色从哪来 ch06 Compose 入门 ← 状态驱动 UI 的心智模型 ch07 Compose 实战 ← 组装一个聊天页 ch08 协程与 Flow ← 数据怎么流 ch09 状态容器 ← 状态放哪、怎么管 ch10 取消与释放 ← 资源怎么收回去 ch11 持久化 ← 数据怎么存 ch12 系统能力接入 ← 怎么用系统TTS/剪贴板/分享/选择器 【第三部分原生与推理】ch13–ch19 ch13 JNI ← Kotlin 怎么调 C ch14 GGUF ← 模型文件里有什么 ch15 加载与上下文 ← 怎么把它装进内存 ch16 推理主循环 ← 怎么让它说话 ch17 Chat Template ← 怎么组织多轮对话 ch18 KV cache 移窗 ← 上下文满了怎么办 ch19 采样参数 ← 怎么挑下一个字 【第四部分工程化与交付】ch20–ch23 ch20 构建体系 ← 代码怎么变成 APK ch21 签名与发版 ← 怎么交付出去 ch22 诊断方法论 ← 出问题怎么查 ch23 综合复刻 ← 自己从零做一遍 【附录】 附录 A 零基础补课 ← 读之前缺什么补什么 附录 B 术语表 ← 遇到生词查这里 附录 C 常见问题 FAQ ← 卡住了先来这里 附录 D 速查索引 ← 本文件按主题/按文件定位这张图的价值迷路的时候回来看一眼——知道自己在哪、下一步去哪。D.5 一句话总结全书从点一下图标到屏幕上一个字一个字蹦出来中间隔着一整套工程界面、状态、异步、持久化、JNI、推理、构建、签名。这本书把这套东西拆开一块一块讲给你听并让你亲手拼回去。相关文档《00-教学设计与大纲》—— 全书的设计说明每章目标、前置、对应源码《README》—— 阅读须知、代码验证约定、术语约定、行号复核方法《附录 A/B/C》—— 补课 / 术语 / FAQ

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑