NewsFeed-MVI-Dagger

所属分类:collect
开发工具:kotlin
文件大小:0KB
下载次数:0
上传日期:2020-03-26 08:10:39
上 传 者sh-1993
说明:  kotlin内置Android新闻应用程序:MVI+Dagger+NetworkBoundResource+ViewModel+Livedata。,
(Android News Application built in kotlin: MVI+Dagger+NetworkBoundResource+ViewModel+Livedata.,)

文件列表:
.idea/ (0, 2020-03-26)
.idea/codeStyles/ (0, 2020-03-26)
.idea/codeStyles/Project.xml (3567, 2020-03-26)
.idea/codeStyles/codeStyleConfig.xml (142, 2020-03-26)
.idea/gradle.xml (748, 2020-03-26)
.idea/kotlinCodeInsightSettings.xml (201, 2020-03-26)
.idea/markdown-navigator-enh.xml (4493, 2020-03-26)
.idea/markdown-navigator.xml (2998, 2020-03-26)
.idea/misc.xml (199, 2020-03-26)
.idea/vcs.xml (180, 2020-03-26)
app/ (0, 2020-03-26)
app/build.gradle (5156, 2020-03-26)
app/proguard-rules.pro (751, 2020-03-26)
app/src/ (0, 2020-03-26)
app/src/androidTest/ (0, 2020-03-26)
app/src/androidTest/java/ (0, 2020-03-26)
app/src/androidTest/java/com/ (0, 2020-03-26)
app/src/androidTest/java/com/android/ (0, 2020-03-26)
app/src/androidTest/java/com/android/myapplication/ (0, 2020-03-26)
app/src/androidTest/java/com/android/myapplication/newsfeed/ (0, 2020-03-26)
app/src/androidTest/java/com/android/myapplication/newsfeed/ExampleInstrumentedTest.kt (696, 2020-03-26)
app/src/main/ (0, 2020-03-26)
app/src/main/AndroidManifest.xml (962, 2020-03-26)
app/src/main/java/ (0, 2020-03-26)
app/src/main/java/com/ (0, 2020-03-26)
app/src/main/java/com/android/ (0, 2020-03-26)
app/src/main/java/com/android/myapplication/ (0, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/ (0, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/BaseApplication.kt (380, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/ (0, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/NewsApi.kt (1264, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/data/ (0, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/data/ArticleNetwork.kt (634, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/data/SourceNetwork.kt (504, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/responses/ (0, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/responses/HeadlinesResponse.kt (513, 2020-03-26)
app/src/main/java/com/android/myapplication/newsfeed/api/responses/SourcesResponse.kt (335, 2020-03-26)
... ...

# NewsFeed-MVI-Dagger ## Project Overview NewsFeed, provides live top and breaking headlines for a country, specific category in a country, single source, or multiple sources, by interacting to [News API](https://newsapi.org/) ## Screenshots ![Headlines](https://user-images.githubusercontent.com/51857962/77375276-1e23cd80-6dc1-11ea-9e38-69da7f95a66e.png) ![headline_dialog](https://user-images.githubusercontent.com/51857962/77375281-211ebe00-6dc1-11ea-9e73-d1a97f362fda.png) ![Sources](https://user-images.githubusercontent.com/51857962/77375284-25e37200-6dc1-11ea-965c-1915ad1d78b4.png) ![source-articles](https://user-images.githubusercontent.com/51857962/77375290-2976f900-6dc1-11ea-8a05-4423bdb36a3b.png) ![favorites](https://user-images.githubusercontent.com/51857962/77375294-2bd95300-6dc1-11ea-8d97-0c081ed41224.png) ## API Key Note **Define key in build.gradle** In your Android studio root directory, locate the `gradle.properties` under `.gradle` folder and add the following: Add `NEWS_APIKEY = "YOUR-API-KEY"`. ## Language [Kotlin](https://kotlinlang.org/) ## Features - MVI with Android Architecture Components(Room, LiveData, ViewModel) - Leverage `NetworkBoundResource` - `Dagger2` for Dependency injection architectural pattern - Discover the top headlines news in a country - Look for top headlines news based on Sources and categories - Users can mark an article as favorite in the details view by tapping a heart icon - Pagination and endless scrolling using custom pagination. - Handle network status and network failures - ConstraintLayout(guidelines, barriers... etc) - ViewPager2 - Material design. - Custom Navigation Controller for Multiple navigation graph - Bottom Navigation Bar - `Kotlin Coroutines` ## Libraries - [AndroidX](https://developer.android.com/jetpack/androidx/) - Previously known as 'Android support Library' - [Glide](https://github.com/bumptech/glide) - for loading and caching images - [Retrofit 2](https://github.com/square/retrofit) - Type-safe HTTP client for Android and Java by Square, Inc. - [Gson](https://github.com/google/gson) - for serialization/deserialization Java Objects into JSON and back - [Dagger 2](https://dagger.dev/) - for dependency injection - [Android Architecture Components](https://developer.android.com/topic/libraries/architecture/) - [Room](https://developer.android.com/topic/libraries/architecture/room) - [ViewModel](https://developer.android.com/topic/libraries/architecture/viewmodel) - [LiveData](https://developer.android.com/topic/libraries/architecture/livedata) - [Navigation](https://developer.android.com/guide/navigation?gclid=CjwKCAiA-vLyBRBWEiwAzOkGVLT4zk8NhxWujb6P4i-NUdcw4U3hWy5gKcnTkHE3IgE18_dayy7bBRoCxtYQAvD_BwE) - [Material Design](https://material.io/develop/) ## External Resources - [CodingWithMitch/courses](https://codingwithmitch.com/courses/) **NewsFeed uses the News API but is not endorsed or certified by NewsApi.**

近期下载者

相关文件


收藏者