Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save mohitkumarsoni/cb1baf68f03658a5bbf5e5546aa17806 to your computer and use it in GitHub Desktop.
Save mohitkumarsoni/cb1baf68f03658a5bbf5e5546aa17806 to your computer and use it in GitHub Desktop.
check internet connection in android
private fun isDeviceConnectedToInternet(): Boolean {
val connectivityManager =
getApplication<NewsApplication>().getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
val activeNetwork = connectivityManager.activeNetwork ?: return false
val capabilities =
connectivityManager.getNetworkCapabilities(activeNetwork) ?: return false
return when {
capabilities.hasTransport(TRANSPORT_WIFI) -> true
capabilities.hasTransport(TRANSPORT_ETHERNET) -> true
capabilities.hasTransport(TRANSPORT_CELLULAR) -> true
else -> false
}
} else {
connectivityManager.activeNetworkInfo?.run {
return when (type) {
TYPE_WIFI -> true
TYPE_ETHERNET -> true
TYPE_MOBILE -> true
else -> false
}
}
}
return false
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment