通过使用现代开发框架如Jetpack Compose、Kotlin、Kotlin Coroutines、Lifecycle、KTOR、Firebase等来构建一个Android有声读物阅读和听书应用。本系列旨在提供逐步开发功能丰富的应用程序的详细步骤,并展示了在当今Android开发环境中实现Clean Architecture和MVI设计模式的方法。
该应用程序的主要特点包括:
Firebase Authentication
DataStore
和Room
ViewModel
Hilt
对于那些已经开始开发之旅的人,可以从GitHub上随时获取有声读物Android应用的某些功能已经就绪的源代码。或者,您可以方便地从指定的GitHub存储库克隆现有项目。
git clone https://github.com/waseemabbas8/libroom-android.git
该项目的文件夹层次结构基于Clean Architecture模式,这是一种流行的Android应用程序结构方法。Clean Architecture模式根据其抽象级别将应用程序分为不同的层次,使内部层次独立于外部层次。这使得应用程序更易于维护和测试。
LIBroomApplication
)、MainActivity
和MainViewModel
。除此之外,它还包含了核心、功能和导航文件夹。LIBroomApplication
负责初始化应用程序并使用Hilt设置依赖注入。MainActivity
是应用程序的入口点。
Feature文件夹
该文件夹包含应用程序的每个功能的子文件夹。在本示例中,有用于authentication, authors, books, categories, favorites, home, onboarding, profile, reader, 和 search
的功能。每个功能文件夹都包含数据、领域和表示层的子文件夹。此外,请注意我为每个功能管理了单独的Hilt DI模块。
Core文件夹
这是应用程序的核心部分。所有可以在应用程序的不同模块中使用的应用程序级别类都放在这个目录下。例如,它包含网络类(KTOR Client或Firebase等)、在多个功能之间共享的Composeable
组件、基类和应用程序的主题。
有声读物Android应用程序的开发进展顺利进行。本系列接下来将详细介绍项目的后续阶段,并将很快提供供您参考。