这个项目能做什么
## Geiravor
Android 应用,面向 [r/a/dio](https://r-a-d.io)(互联网广播流媒体服务)。用户可见名称:**r/a/dio**。包名:`io.r_a_d.geiravor`。
许可证:MIT(`LICENSE.md`)。版权所有 © 2026 Sakurai Momoka。
**1.0.0** 是对 0.3.0 的从零重写。0.3.0 的最后源码位于 `legacy/0.3`(标签 `v0.3.0`)。
### 安装
GitHub Releases 提供四个侧载 APK:Debug 和 Release 分别对应 `arm64-v8a`(手机)和 `x86_64`(Waydroid / 大多数模拟器)。Release 版本经过 R8 压缩并使用项目侧载密钥签名(非 Play 商店)。Debug 版本使用调试签名。两者共享同一包名 (`io.r_a_d.geiravor`),安装其中一个会替换另一个。
最新版本:[v1.0.1](https://github.com/sakuumomo/geiravor/releases/tag/v1.0.1)。
### 构建
Nix 是受支持的工具链:
```
nix develop # 完整的开发环境(JDK、Android SDK/NDK、DHU 在 Linux 上)
nix develop .#rust # 仅主机 Rust(fmt、clippy、测试、rustdoc)
cargo test --manifest-path core/Cargo.toml
./gradlew :app:testDebugUnitTest :app:assembleDebug
./scripts/dhu.sh # DHU;等待 Head Unit Server;使用 --stop 结束
```
需要支持 flake 的 Nix。`aarch64-linux` 不是 flake 目标。
克隆仓库后:
```
git config core.hooksPath .githooks
```
### 文档
| 文件 | 作用 |
|---|---|
| [`docs/spec/`](docs/spec/) | 产品合约(听众获得的内容) |
| [`docs/`](docs/README.md) | 仓库合约 vs 产品拆分 |
| [`AGENTS.md`](AGENTS.md) | 如何在此代码树中工作 |
| [`CONTRIBUTING.md`](CONTRIBUTING.md) | 指向 AGENTS 和文档 |
| [`SECURITY.md`](SECURITY.md) | 漏洞报告 |
| [`CHANGELOG.md`](CHANGELOG.md) | **此** 代码树的版本历史 |
生成的 crate 文档(GitHub Pages,非 wiki):[rustdoc](https://sakuumomo.github.io/geiravor/geiravor_core/) 或 `nix develop .#rust -c cargo doc --no-deps --open`(不是第二份规范)。Pages 站点在 `main` 分支拥有 `pages` 工作流后才会存在。
评论
0 评分人数达到10人后显示
登录后参与讨论。