Pokedex是一个基于现代Android应用程序技术栈和MVVM架构的小型演示应用程序。这个项目特别关注实现依赖注入的新库Hilt。还从网络获取数据并通过存储库模式将持久数据集成到数据库中。
技术栈和开源库
最低SDK级别21基于Kotlin,用于异步的Coroutines + Flow。用于依赖注入的Hilt。JetPack生命周期-当生命周期状态改变时处理观察数据。ViewModel-UI相关数据持有者,生命周期感知。RoomPersistence-使用抽象层构建数据库。ArchitectureMVVM架构(视图-数据绑定-视图模型-模型)Bindables -Android数据绑定工具包,用于通知UI层的数据更改。存储库模式Retrofit2&OkHttp3 -构建RESTAPI和分页网络数据。Sandwich -构建轻量级的httpAPI响应并处理错误响应。Moshi -适用于Kotlin和Java的现代JSON库。Glide , GlidePalette -加载图像。TransformationLayout -实现变换运动动画。WhatIf -更流畅地检查可空对象和空集合。Bundler -优雅地插入和检索值的AndroidIntent&Bundle扩展.Timber -loggingMaterial-Components -材料设计组件,如波纹动画、cardView。自定义视图Rainbow -一种为Android应用渐变和着色的简单方法。AndroidRibbon -一种在Android上实现具有闪烁效果的漂亮丝带的简单方法。ProgressView -一个优雅而灵活的ProgressView,完全可定制动画。架构图:
评论