All Projects → zhujiang521 → Playandroid

zhujiang521 / Playandroid

Licence: mit
🔥🔥🔥 Kotlin + MVVM + LCE版玩安卓,暗黑模式、横竖屏、无网、弱网、无数据、加载失败等等各种情况,协程、Room、Hilt、DataStore、LiveData、Retrofit、屏幕适配、本地缓存、多语言切换、多 lib,你想要的我都有!!!

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Playandroid

Movietray
Its a playground application focusing on Paging3, MVVM architecture, Kotlin Extension functions, Retrofit, DSL, Navigation component, MotionLayout, SharedElementTransition, Single Activity Architecture, DataStore etc.
Stars: ✭ 78 (-81.16%)
Mutual labels:  coroutines, datastore, mvvm, room, retrofit2
The Movie Db Kotlin
The Movie DB app using Kotlin with updated Android features
Stars: ✭ 176 (-57.49%)
Mutual labels:  coroutines, mvvm, room, retrofit2
Foodium
It simply loads Posts data from API and stores it in persistence storage (i.e. SQLite Database). Posts will be always loaded from local database. Remote data (from API) and Local data is always synchronized.
Stars: ✭ 1,940 (+368.6%)
Mutual labels:  coroutines, mvvm, room, retrofit2
Marvelheroes
❤️ A sample Marvel heroes application based on MVVM (ViewModel, Coroutines, LiveData, Room, Repository, Koin) architecture.
Stars: ✭ 826 (+99.52%)
Mutual labels:  coroutines, mvvm, room, retrofit2
Coolweather
Weather App that uses Android best practices. Android Jetpack, clean architecture. Written in Kotlin
Stars: ✭ 154 (-62.8%)
Mutual labels:  coroutines, mvvm, room, retrofit2
Gallerit
A sample Android gallery to search images posted on Reddit built using modern Android development tools (Architecture Components, MVVM, Coroutines, Flow, Navigation, Retrofit, Room, Koin)
Stars: ✭ 153 (-63.04%)
Mutual labels:  coroutines, mvvm, room, retrofit2
GitHubApplication
GitHubApplication 📱 is an Android application built to demonstrate the use of modern Android development tools - (Kotlin, Coroutines, Hilt, LiveData, View binding, Data Store, Architecture components, MVVM, Room, Retrofit, Navigation).
Stars: ✭ 11 (-97.34%)
Mutual labels:  room, coroutines, mvvm, retrofit2
Mvvmsmart
基于谷歌最新AAC架构,MVVM设计模式的一套快速开发库,整合ViewModel+Lifecycles+Navigation+DataBinding+LiveData+Okhttp+Retrofit+RxJava+Glide等主流模块,满足日常开发需求。使用该框架可以快速开发高质量、易维护的Android应用。 项目组会持续维护,请放心使用.欢迎Start并Fork交流.
Stars: ✭ 382 (-7.73%)
Mutual labels:  mvvm, room, retrofit2
Kotlinjetpackinaction
🔥🔥 Kotlin Jetpack zero to hero. 新手到高手
Stars: ✭ 264 (-36.23%)
Mutual labels:  coroutines, mvvm, retrofit2
Wanandroid
🏄 基于Architecture Components dependencies (Lifecycles,LiveData,ViewModel,Room)构建的WanAndroid开源项目。 你值得拥有的MVVM快速开发框架:https://github.com/jenly1314/MVVMFrame
Stars: ✭ 410 (-0.97%)
Mutual labels:  mvvm, room, retrofit2
Jetpack github
基于Kotlin + Jetpack全家桶 + Coroutines(协程) + Flutter等架构实现的一款精简版Github客户端项目,望与广大小伙伴一起成长,欢迎start or fork!
Stars: ✭ 314 (-24.15%)
Mutual labels:  mvvm, room, retrofit2
bitcoin-market-android
Bitcoin Market app shows you the current Bitcoin market price and price chart of different time intervals 💰
Stars: ✭ 284 (-31.4%)
Mutual labels:  coroutines, retrofit2, compose
Superhero-App
🦸🏻‍♂️🦹🏻‍♀️Superhero app built with Kotlin, ViewModel, LiveData, ViewBinding, Room, and Hilt
Stars: ✭ 27 (-93.48%)
Mutual labels:  room, coroutines, retrofit2
Clean Mvvm Archcomponents
👽 Android app consuming Star Wars API.Built with clean architecture ,MVVM pattern, Koin , Coroutines + Flows ,Architecture Components, Data Binding , Firebase , Unit/UI Tests ,Motion Layout
Stars: ✭ 285 (-31.16%)
Mutual labels:  coroutines, mvvm, retrofit2
Dagger-Hilt-MVVM
Sample app that demonstrates the usage of Dagger Hilt with Kotlin & MVVM
Stars: ✭ 62 (-85.02%)
Mutual labels:  room, coroutines, retrofit2
Paging-3-Sample
This app is created as a sample app which loads movies from Tmdb api and uses Paging 3 library to show it in a Recycler view.
Stars: ✭ 96 (-76.81%)
Mutual labels:  coroutines, mvvm, retrofit2
Delish
Delish, a Food Recipes App in Jetpack Compose and Hilt based on modern Android tech-stacks and MVI clean architecture.
Stars: ✭ 356 (-14.01%)
Mutual labels:  room, coroutines, compose
Compose-BreakingBad
🧪 ☠︎ Jetpack Compose - Breaking Bad ☢︎
Stars: ✭ 26 (-93.72%)
Mutual labels:  room, coroutines, retrofit2
FindTaek
📦 내가 시킨 택배가 어디까지 왔는지 확인해보세요
Stars: ✭ 26 (-93.72%)
Mutual labels:  room, mvvm, retrofit2
DeezerClone
This Application using Dagger Hilt, Coroutines, Flow, Jetpack (Room, ViewModel, LiveData),Navigation based on MVVM architecture.
Stars: ✭ 81 (-80.43%)
Mutual labels:  room, coroutines, mvvm

Play Android

项目新增了 Compose 版本,大家如果想体验的话下载代码直接切换为 main 分支即可,有问题直接提 issues。

体验

如果想要下载尝试下的话可以直接点击链接进行下载,或者扫描下面的二维码进行下载。

https://www.pgyer.com/llj2

img

如果上面的下载次数用完的话可以点击下面链接: https://github.com/zhujiang521/PlayAndroid/raw/master/apk/app-release_7zip_aligned_signed.apk

玩安卓MVVM版截图

首先来看下之前已经实现的大概样式吧:

初始样式

看着样式还好,但之前只是简单做了下,实现了最基本的功能,切换成横屏之后基本没办法看,更不要说分屏、夜间模式、本地缓存、无网弱网情况、无数据情况等等了,接下来看一下现在新增的适配页面吧。

夜间模式

横屏适配

无网、无数据适配

实现过程

项目用到了很多技术,基本上都是现在安卓app的最新标配,比如:MVVM、JetPack(LiveData、Room、ViewModel)、Retrofit、协程、Glide等等。

其实在优化这个Demo的时候觉得做了好多事,但是真的让我写的时候就有点懵逼了,因为用到的东西比较多,随便拎出一个来都能单独写一篇文章;

比如在apk大小的优化,这个apk最后被我优化到只剩3.3MB,现在随便一个apk都得几十MB吧。apk优化的挺多,比如代码混淆、资源文件的混淆、不需要的语言删除、图片转webp等等,如果想深入了解apk压缩的话,可以去看我之前写的这篇文章:玩安卓必须要掌握的性能优化之APK极限压缩

又比如新增的浏览历史功能中用到了Room,没有Room的时候基本都在使用原生或者使用LitePalGreenDAO等来实现,虽然LitePalGreenDAO也是ORM的方式来实现的数据库操作,但是总体来说还是没有Room好用,Room写好实现的DAO接口文件即可,在你编译的时候会直接生成对应的实现类,真的很香。

类似上面的还有很多,如果代码哪块写的不好或者有优化的地方欢迎大家告诉我或者给我提issues。

使用到的库

banner

bugly

SmartRefreshLayout

utilCode

glide

retrofit

dataStore

coroutines

room

License

Copyright (c) 2020 朱江

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].