Skip to content

Commit

Permalink
Merge pull request #15 from rommansabbir/dev
Browse files Browse the repository at this point in the history
Version 4.0.0
  • Loading branch information
rommansabbir authored Aug 12, 2022
2 parents 30d2d35 + 4145cc9 commit d833b26
Show file tree
Hide file tree
Showing 9 changed files with 37 additions and 445 deletions.
52 changes: 35 additions & 17 deletions NetworkX/src/main/java/com/rommansabbir/networkx/NetworkXManager.kt
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,15 @@ import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.util.Log
import java.net.InetAddress

internal class NetworkXManager constructor(
private val application: Application,
private val isSpeedMeterEnabled: Boolean
) {
// Callback for activity lifecycle for this specific application
private val activityCallback = object : Application.ActivityLifecycleCallbacks {
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {}

override fun onActivityStarted(activity: Activity) {}

override fun onActivityResumed(activity: Activity) {
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {
try {
getConnectivityManager(application).apply {
registerNetworkCallback(
Expand All @@ -31,36 +28,40 @@ internal class NetworkXManager constructor(
)
if (isSpeedMeterEnabled) {
enabledSpeedMeter()
logThis("onActivityResumed: speed meter enabled")
logThis("onActivityCreated: speed meter enabled")
}
logThis("onActivityResumed: listener registered")
logThis("onActivityCreated: listener registered")
}
} catch (e: Exception) {
e.printStackTrace()
logThis(e.message)
}
}

override fun onActivityPaused(activity: Activity) {
override fun onActivityStarted(activity: Activity) {}

override fun onActivityResumed(activity: Activity) {}

override fun onActivityPaused(activity: Activity) {}

override fun onActivityStopped(activity: Activity) {}

override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {}

override fun onActivityDestroyed(activity: Activity) {
try {
getConnectivityManager(application).unregisterNetworkCallback(getNetworkCallBack)
logThis("onActivityPaused: listener unregistered")
logThis("onActivityDestroyed: listener unregistered")
if (isSpeedMeterEnabled) {
disableSpeedMeter()
logThis("onActivityResumed: speed meter disabled")
logThis("onActivityDestroyed: speed meter disabled")
}
} catch (e: Exception) {
e.printStackTrace()
logThis(e.message)
}
}

override fun onActivityStopped(activity: Activity) {}

override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {}

override fun onActivityDestroyed(activity: Activity) {}

}

@Volatile
Expand Down Expand Up @@ -114,11 +115,28 @@ internal class NetworkXManager constructor(
.build()
}

private fun isInternetAvailable(): Boolean {
return try {
return !InetAddress.getByName("google.com").equals("")
} catch (e: java.lang.Exception) {
false
}
}

private fun updateInternetConnectionStatus() {
try {
NetworkXProvider.setConnection(isInternetAvailable())
} catch (e: Exception) {
NetworkXProvider.setConnection(false)
}
}

// Callback to get notified about network availability
private val getNetworkCallBack = object : ConnectivityManager.NetworkCallback() {
override fun onAvailable(network: Network) {
super.onAvailable(network)
NetworkXProvider.setConnection(true)
/*NetworkXProvider.setConnection(true)*/
updateInternetConnectionStatus()
}

override fun onLost(network: Network) {
Expand Down
49 changes: 0 additions & 49 deletions NetworkX/src/main/java/com/rommansabbir/networkx/core/NetworkX.kt

This file was deleted.

This file was deleted.

160 changes: 0 additions & 160 deletions NetworkX/src/main/java/com/rommansabbir/networkx/core/NetworkXImpl.kt

This file was deleted.

Loading

0 comments on commit d833b26

Please sign in to comment.