Skip to content

Repository files navigation

Folio

一个纯本地、隐私优先的 Android 阅读器,用于查看 Markdown / HTML / 网页包(ZIP)。原生 Kotlin 编写,界面走电子书式极简风,无账号、无云端、无追踪。

A local-first, privacy-friendly Android reader for Markdown / HTML / zipped web pages. Native Kotlin, e-book-style minimal UI, no account, no cloud, no tracking.

📖 快速上手

第一次用?跟着这几步走,两分钟上手。

1. 安装 —— Android 7.0+(minSdk 24),把 APK 拖进手机安装。首次进入是空的"最近"列表。

2. 打开 / 导入文档 —— 首页点 打开 / 导入 → 选手机里的 .md / .html / .zip。文件会复制一份进 App 本地库(原文件不动),之后在"最近"里随时再开。

3. 阅读 ——

  • 点右上 Aa:切阅读主题(纸白 / 米黄 / 夜黑…)、字体、字号、代码配色。
  • 点 目录(TOC):按标题快速跳转;阅读进度自动记住,下次接着读。
  • 正文里的图片:点一下全屏,双指捏合放大。

4. 编辑(Markdown) —— 阅读 .md 时点右上 ✏️ 进编辑,直接改源码;退出自动保存回本地库,可再 分享 / 导出。

5. 整理:标签 & 收藏 ——

  • 长按文件卡 → 加 标签、设 收藏、重命名、删除。
  • 主页标签 chip 条按标签筛选;🗂 管理(改名 / 删标签)。想清爽可在 设置 ⚙ 关掉"卡片上显示标签"。

6. HTML / 网页包(ZIP) —— .html 直接渲染(JavaScript 默认关,需要时一键开);.zip 网页包解压后正确加载内部相对资源(图片 / CSS)。

🔒 全程纯本地:不联网、不上传、不要账号。文件只在你手机里。

✨ 功能

阅读

  • Markdown 全语法渲染:标题 / 列表 / 任务列表 / 表格 / 引用 / 删除线 / 链接 / 图片
  • LaTeX 块公式($$ … $$),长公式 / 宽表格 / 长代码行横向滚动不挤压
  • 代码块语法高亮(Python · JS/TS · Kotlin · Java · C/C++ · SQL · Go · Rust)+ 可选配色(跟随 / GitHub / Dracula / Nord)
  • 排版精修(标题 / 引用竖条 / 分割线 / 行内码),观感向 Typora 靠拢
  • HTML 查看(JavaScript 默认关闭,可一键开启)
  • ZIP 网页包:解压后用 WebViewAssetLoader 正确加载相对资源,带 Zip-Slip 防护
  • 阅读主题 9 套(纸白 / 米黄 / 青墨 / 夜黑 / 渐变风景…)+ 字体 / 字号
  • 目录(TOC)跳转 · 阅读进度记忆 · 图片点击全屏捏合放大

管理

  • 最近 / 收藏 · 多标签(一个文件多标签,可改名 / 删除 / 多选筛选)
  • 轻量编辑(Markdown,改写库内副本并可导出)
  • 重命名 / 删除 / 分享(文本 + 文件)· 全局浅色 / 深色 / 跟随系统
  • 所有弹窗为 Material 底部抽屉

🧱 技术栈

方面 选型
语言 / UI Kotlin · XML Views(viewBinding,非 Compose)
构建 AGP 9.2.1 · Gradle 9.4.1 · Kotlin 2.2.10 · compileSdk 36 · minSdk 24
Markdown Markwon 4.6.2(+ ext-latex / recycler-table)
代码高亮 自写轻量词法分析(无注解处理器,零额外重依赖)
HTML / ZIP 系统 WebView + androidx.webkit WebViewAssetLoader
存储 本地 JSON(org.json,不用 Room/KSP)

🔨 构建

需要 Android Studio(自带 JBR)或本机 JDK 21。

# 用 Android Studio 的 JBR 当 JAVA_HOME(Windows 示例)
JAVA_HOME="<Android Studio>/jbr" ./gradlew :app:assembleDebug

产物在 app/build/outputs/apk/debug/。也可直接在 Android Studio 里 Run。

📱 安装

目标设备 Android 7.0+(minSdk 24)。把 debug APK 拖进手机安装即可。

📂 目录

app/src/main/java/com/folio/reader/
  ├─ data/     # 库记录 + JSON 持久化 + 偏好
  ├─ file/     # 类型识别 / 复制入库 / ZIP 解压 / Intent
  ├─ reader/   # Markwon 装配 / 代码高亮 / 阅读主题
  └─ ui/       # 首页 + 阅读页 + 各 Material 抽屉
design/        # 渲染测试样例 test.md / test.html + 交互原型 demo

📄 许可

MIT © Tangzy0121

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages