Skip to content

Commit d833b26

Browse files
authored
Merge pull request #15 from rommansabbir/dev
Version 4.0.0
2 parents 30d2d35 + 4145cc9 commit d833b26

File tree

9 files changed

+37
-445
lines changed

9 files changed

+37
-445
lines changed

NetworkX/src/main/java/com/rommansabbir/networkx/NetworkXManager.kt

Lines changed: 35 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,15 @@ import android.os.Bundle
1111
import android.os.Handler
1212
import android.os.Looper
1313
import android.util.Log
14+
import java.net.InetAddress
1415

1516
internal class NetworkXManager constructor(
1617
private val application: Application,
1718
private val isSpeedMeterEnabled: Boolean
1819
) {
1920
// Callback for activity lifecycle for this specific application
2021
private val activityCallback = object : Application.ActivityLifecycleCallbacks {
21-
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {}
22-
23-
override fun onActivityStarted(activity: Activity) {}
24-
25-
override fun onActivityResumed(activity: Activity) {
22+
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {
2623
try {
2724
getConnectivityManager(application).apply {
2825
registerNetworkCallback(
@@ -31,36 +28,40 @@ internal class NetworkXManager constructor(
3128
)
3229
if (isSpeedMeterEnabled) {
3330
enabledSpeedMeter()
34-
logThis("onActivityResumed: speed meter enabled")
31+
logThis("onActivityCreated: speed meter enabled")
3532
}
36-
logThis("onActivityResumed: listener registered")
33+
logThis("onActivityCreated: listener registered")
3734
}
3835
} catch (e: Exception) {
3936
e.printStackTrace()
4037
logThis(e.message)
4138
}
4239
}
4340

44-
override fun onActivityPaused(activity: Activity) {
41+
override fun onActivityStarted(activity: Activity) {}
42+
43+
override fun onActivityResumed(activity: Activity) {}
44+
45+
override fun onActivityPaused(activity: Activity) {}
46+
47+
override fun onActivityStopped(activity: Activity) {}
48+
49+
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {}
50+
51+
override fun onActivityDestroyed(activity: Activity) {
4552
try {
4653
getConnectivityManager(application).unregisterNetworkCallback(getNetworkCallBack)
47-
logThis("onActivityPaused: listener unregistered")
54+
logThis("onActivityDestroyed: listener unregistered")
4855
if (isSpeedMeterEnabled) {
4956
disableSpeedMeter()
50-
logThis("onActivityResumed: speed meter disabled")
57+
logThis("onActivityDestroyed: speed meter disabled")
5158
}
5259
} catch (e: Exception) {
5360
e.printStackTrace()
5461
logThis(e.message)
5562
}
5663
}
5764

58-
override fun onActivityStopped(activity: Activity) {}
59-
60-
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {}
61-
62-
override fun onActivityDestroyed(activity: Activity) {}
63-
6465
}
6566

6667
@Volatile
@@ -114,11 +115,28 @@ internal class NetworkXManager constructor(
114115
.build()
115116
}
116117

118+
private fun isInternetAvailable(): Boolean {
119+
return try {
120+
return !InetAddress.getByName("google.com").equals("")
121+
} catch (e: java.lang.Exception) {
122+
false
123+
}
124+
}
125+
126+
private fun updateInternetConnectionStatus() {
127+
try {
128+
NetworkXProvider.setConnection(isInternetAvailable())
129+
} catch (e: Exception) {
130+
NetworkXProvider.setConnection(false)
131+
}
132+
}
133+
117134
// Callback to get notified about network availability
118135
private val getNetworkCallBack = object : ConnectivityManager.NetworkCallback() {
119136
override fun onAvailable(network: Network) {
120137
super.onAvailable(network)
121-
NetworkXProvider.setConnection(true)
138+
/*NetworkXProvider.setConnection(true)*/
139+
updateInternetConnectionStatus()
122140
}
123141

124142
override fun onLost(network: Network) {

NetworkX/src/main/java/com/rommansabbir/networkx/core/NetworkX.kt

Lines changed: 0 additions & 49 deletions
This file was deleted.

NetworkX/src/main/java/com/rommansabbir/networkx/core/NetworkXCore.kt

Lines changed: 0 additions & 31 deletions
This file was deleted.

NetworkX/src/main/java/com/rommansabbir/networkx/core/NetworkXImpl.kt

Lines changed: 0 additions & 160 deletions
This file was deleted.

0 commit comments

Comments
 (0)