Skip to content

phansier/FlowReactiveNetwork

Repository files navigation

FlowReactiveNetwork on Coroutines

Download Kotlin Version

kotlinweekly CI

FlowReactiveNetwork is an Android library listening network connection state and Internet connectivity with Coroutines Flow. It's a port of ReactiveNetwork library rewritten with Reactive Programming approach. Library supports both new and legacy network monitoring strategies. Min sdk version = 14.

Usage

See ReactiveNetwork docs for Usage. API is the same except for return data types:

  • Observable<T> replaced by Flow<T>
  • Single<T> replaced by suspend fun():T

Download

You can depend on the library through Gradle:

dependencies {
    implementation 'ru.beryukhov:flowreactivenetwork:1.0.4'
}
// now the library is available in mavenCentral()
allprojects {
    repositories {
        //...
        mavenCentral() // should probably be here already
    }
}

Tests

Tests are available in reactiveNetwork/src/test/kotlin/ directory and can be executed on JVM without any emulator or Android device from Android Studio or CLI with the following command:

./gradlew test

Warning

There are some problems with working on PreLollipop devices visible by unit-tests and tests on cancellation of Flow.