thanhhaa / FlowReactiveNetwork

Android library listening network connection state and Internet connectivity with Coroutines Flow

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

About

Android library listening network connection state and Internet connectivity with Coroutines Flow

License:Apache License 2.0


Languages

Language:Kotlin 100.0%Language:Makefile 0.0%