Repolode
android

android/architecture-samples

谷歌提供的 TODO 应用示例,通过多个分支对比 Android 架构模式、工具与测试方法。

Star
45,879
Fork
11,850
未关闭 Issue
228
最近提交
18小时前

这是什么?

本仓库收集了多个 Android 示例应用,它们用不同的架构方案实现同一个 TODO 应用,便于开发者比较同一功能的组织方式。

当前分支使用 Jetpack Compose 构建界面,采用单 Activity 架构并通过 Navigation Compose 导航。每个页面包含一个 Compose 视图和一个 ViewModel,异步操作由 Flow 与协程处理。数据层由仓库(Repository)统一管理本地 Room 数据库和模拟的远程数据源,依赖注入使用 Hilt,并定义了 `mock` 与 `prod` 两种产品风味。

项目包含单元测试、集成测试和端到端测试,其中共享测试可在模拟器或真机上运行。它主要用于学习和参考,界面刻意保持简单,并不是可直接套用的模板或生产级应用。

核心功能

  • 01基于 Jetpack Compose 的界面,采用单 Activity 架构与 Navigation Compose
  • 02每个页面配备 ViewModel,使用 Flow 与协程管理响应式状态
  • 03仓库层结合 Room 本地存储与模拟远程数据源
  • 04使用 Hilt 进行依赖注入
  • 05提供 mock 与 prod 两种产品风味
  • 06包含单元、集成和端到端测试,其中有可在设备上运行的共享测试

适用场景

  • 学习如何用 Compose、ViewModel 和仓库层组织 Android 应用
  • 通过不同分支对比同一应用的多种架构方案
  • 参考其测试配置编写单元测试和设备端测试

快速上手

  1. 1

    克隆仓库

    git clone git@github.com:android/architecture-samples.git
  2. 2

    在 Android Studio 中打开 architecture-samples/ 目录

使用前须知

  • 需要使用 Android Studio 来构建和运行应用。
  • 每种架构方案位于不同分支,需要先检出你想要的分支。

标签

常见问题

architecture-samples 是什么?
谷歌提供的 TODO 应用示例,通过多个分支对比 Android 架构模式、工具与测试方法。 本仓库收集了多个 Android 示例应用,它们用不同的架构方案实现同一个 TODO 应用,便于开发者比较同一功能的组织方式。
architecture-samples 可以免费使用吗?用的什么许可证?
architecture-samples 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
architecture-samples 还在维护吗?
活跃维护中。architecture-samples 最近一次提交是在 2026年10月20日。
architecture-samples 适合用来做什么?
学习如何用 Compose、ViewModel 和仓库层组织 Android 应用 通过不同分支对比同一应用的多种架构方案 参考其测试配置编写单元测试和设备端测试
architecture-samples 怎么安装和运行?
克隆仓库: git clone git@github.com:android/architecture-samples.git 在 Android Studio 中打开 architecture-samples/ 目录
在哪里获取 architecture-samples?
源代码和安装说明在 GitHub 上:https://github.com/android/architecture-samples

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目