这个项目能做什么
Pokedex 是一个 Android 应用,作为现代 Android 开发实践的演示而构建。它使用 Kotlin 编写,遵循 MVVM 架构和 Repository 模式,与 Google 官方应用架构指南保持一致。
README 中描述的关键技术要素包括:
- Kotlin 配合 Coroutines 和 Flow 处理异步工作。
- Jetpack 组件:Lifecycle、ViewModel、DataBinding、Room,以及用于依赖注入的 Hilt。
- Retrofit2 和 OkHttp3 用于 REST API 访问,Sandwich 用于网络响应处理,Moshi 用于 JSON 解析。
- Material Components、用于图片加载的 Glide,以及用于动效动画的 TransformationLayout。
- 自定义视图,如 Rainbow、AndroidRibbon 和 ProgressView。
- 通过 Turbine 为协程 Flow 提供测试支持。
该应用分为两个主要层:UI 层(视图加 ViewModel,使用 DataBinding 和 Bindables 实现双向绑定)和数据层(实现离线优先、单一数据源方法的仓库)。该项目还采用模块化,以提高可复用性、并行构建、可见性控制和团队专注度。
Pokedex 使用公开的 PokeAPI 获取宝可梦数据。支持的最低 SDK 级别为 21,预构建的 APK 可通过项目的 Releases 页面获取。该仓库采用 Apache 2.0 许可。对于有兴趣了解基于 Compose 实现的人,还提到了一个单独的 Jetpack Compose 版本 Pokedex Compose。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。