mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-11-01 07:13:56 +01:00
feat:Added check for wheather internet connection was available for a network
This commit is contained in:
parent
5412193f84
commit
5f0d84eb97
1 changed files with 19 additions and 4 deletions
|
|
@ -6,12 +6,19 @@ import android.content.ActivityNotFoundException
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.net.ConnectivityManager
|
import android.net.ConnectivityManager
|
||||||
|
import android.net.Network
|
||||||
|
import android.net.NetworkCapabilities
|
||||||
|
import android.net.NetworkInfo
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
|
import android.net.wifi.WifiManager
|
||||||
|
import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import android.telephony.TelephonyManager
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
|
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
|
||||||
import fr.free.nrw.commons.AboutActivity
|
import fr.free.nrw.commons.AboutActivity
|
||||||
|
|
@ -171,7 +178,7 @@ class MoreBottomSheetFragment : BottomSheetDialogFragment() {
|
||||||
fun uploadFeedback(feedback: Feedback) {
|
fun uploadFeedback(feedback: Feedback) {
|
||||||
val feedbackContentCreator = FeedbackContentCreator(requireContext(), feedback)
|
val feedbackContentCreator = FeedbackContentCreator(requireContext(), feedback)
|
||||||
|
|
||||||
if (!isNetworkAvailable(requireContext())) {
|
if (!isInternetConnectionAvailable(requireContext())) {
|
||||||
Toast.makeText(requireContext(), R.string.error_feedback, Toast.LENGTH_LONG).show()
|
Toast.makeText(requireContext(), R.string.error_feedback, Toast.LENGTH_LONG).show()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
@ -201,12 +208,20 @@ class MoreBottomSheetFragment : BottomSheetDialogFragment() {
|
||||||
/**
|
/**
|
||||||
* This method is to check whether internet connection is available or not
|
* This method is to check whether internet connection is available or not
|
||||||
*/
|
*/
|
||||||
fun isNetworkAvailable(context: Context): Boolean {
|
fun isInternetConnectionAvailable(context: Context): Boolean {
|
||||||
val connectivityManager = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
|
val connectivityManager = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
|
||||||
val activeNetwork = connectivityManager.activeNetworkInfo
|
|
||||||
return activeNetwork != null && activeNetwork.isConnected
|
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||||
|
val activeNetwork: Network? = connectivityManager.activeNetwork
|
||||||
|
val networkCapabilities = connectivityManager.getNetworkCapabilities(activeNetwork)
|
||||||
|
networkCapabilities?.hasCapability(android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET) == true
|
||||||
|
} else {
|
||||||
|
val activeNetworkInfo: NetworkInfo? = connectivityManager.activeNetworkInfo
|
||||||
|
activeNetworkInfo != null && activeNetworkInfo.isConnected
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method shows the alert dialog when a user wants to send feedback about the app.
|
* This method shows the alert dialog when a user wants to send feedback about the app.
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue