All Projects → jshvarts → AppLifecycleDemo

jshvarts / AppLifecycleDemo

Licence: Apache-2.0 license
Uses ProcessLifecycleOwner to react to app coming to foreground and going to background

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to AppLifecycleDemo

AndroidVIP
Android project to experiment the VIPER approach using mosby, RxJava and dagger2
Stars: ✭ 21 (-56.25%)
Mutual labels:  dagger2, dagger-android
dagger-track
Gradle plugin to add clock trackings to your dagger components and subcomponents
Stars: ✭ 59 (+22.92%)
Mutual labels:  dagger2, dagger-android
Simple-Note-App-with-Online-Storage
✍️ Simple Note Making App use Sqllite Room 🧰 for caching the notes and 📥 Firebase Database for online storage
Stars: ✭ 42 (-12.5%)
Mutual labels:  dagger2, dagger-android
MVVMQuick
🚀使用MVVMQuick快速构建您的MVVM结构项目!(Quickly start projects with MVVMQuick!)
Stars: ✭ 23 (-52.08%)
Mutual labels:  dagger2, dagger-android
Simple-Notes-Kotlin-App
✍️ Simple Note Making App use mvvm architecture , dagger , coroutines and navigation component. Features includes 🗒️ create , edit and ❌ delete notes
Stars: ✭ 40 (-16.67%)
Mutual labels:  dagger2, dagger-android
DaggerAndroidMVP
Demonstrates using Dagger 2.10+ in MVP app that follows Clean Architecture, RxJava 2, RxRelay
Stars: ✭ 43 (-10.42%)
Mutual labels:  dagger2, dagger-android
Pursuit-Core-Android
Pursuit Core Android
Stars: ✭ 45 (-6.25%)
Mutual labels:  dagger2
DARK
Dagger 2 + Anko + Rx + Kotlin
Stars: ✭ 27 (-43.75%)
Mutual labels:  dagger2
kotlin-mvp-starter
MVP Starter with RxJava, Dagger 2 in Kotlin
Stars: ✭ 56 (+16.67%)
Mutual labels:  dagger2
Praxis
Example Android project using MVVM, DaggerAndroid, Jetpack Compose, Retrofit, Coroutines and Multi module architecture ✌🏽
Stars: ✭ 258 (+437.5%)
Mutual labels:  dagger2
kotlin-news-reader
A simple news reader with Kotlin.
Stars: ✭ 14 (-70.83%)
Mutual labels:  dagger2
Klean-ArchiteKture
Kotlin Android clean-architecture demo project for a meetup talk. Slides: https://docs.google.com/presentation/d/1CxnntHf3CorNDicx_cDN5s1t5pEbUwjwWHZ5PNmfe6Y/edit?usp=sharing
Stars: ✭ 10 (-79.17%)
Mutual labels:  dagger2
ComponentsManager
A service locator that makes work with Dagger2 in multi-module project easier. Allows binding components life to Activity/Fragment life-cycle.
Stars: ✭ 70 (+45.83%)
Mutual labels:  dagger2
Kata-Dagger2-Android
Kata to practice Dependency injection using Dagger 2.
Stars: ✭ 21 (-56.25%)
Mutual labels:  dagger2
TeamCityApp
TeamCity in your pocket (Android application)
Stars: ✭ 48 (+0%)
Mutual labels:  dagger2
Simple-MVVM
A simple Android MVVM pattern example
Stars: ✭ 34 (-29.17%)
Mutual labels:  dagger-android
kotlin-mvvm-boilerplate
💡💡 An Android boilerplate project with: Kotlin, MVVM, Room, Dagger2, RxJava, Retrofit and more.
Stars: ✭ 32 (-33.33%)
Mutual labels:  dagger2
Tangle
Android injection using the Anvil compiler plugin
Stars: ✭ 65 (+35.42%)
Mutual labels:  dagger2
Muvi
Very simple project to show a collection of Movie from MovieDb with a minimalist design
Stars: ✭ 46 (-4.17%)
Mutual labels:  dagger2
InstantAppStarter
Starter Project Structure for Android Instant app. https://blog.mindorks.com/android-mvp-architecture-with-instant-app-support-11ba48241a82
Stars: ✭ 44 (-8.33%)
Mutual labels:  dagger2

App Lifecycle Demo App

Build Status

Medium post is here: http://proandroiddev.com/react-to-app-foreground-and-background-events-with-processlifecycleowner-96278e5816fa

Summary

This project demonstrates using the new ProcessLifecycleOwner (bundled with Lifecycle Architecture Components) to react to foreground and background events.

ProcessLifecycleOwner provides lifecycle for the whole application process. For more details, see my post on Medium.

Use Cases

App is foregrounded. ProcessLifecycleOwner notifies the LifecycleObserver of Lifecycle.Event.ON_START

App is coming to foreground

App is backgrounded. ProcessLifecycleOwner notifies the LifecycleObserver of Lifecycle.Event.ON_STOP

App is going to background

License

Copyright 2017 James Shvarts

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
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].