Sobes.tech
Junior — Middle

Kuidas määrata võrguühenduse saadavust?

sobes.tech AI

Vastus AI-lt

Androidis kasutatakse tavaliselt ConnectivityManager klassi võrguühenduse kättesaadavuse määramiseks. Selle abil saab kontrollida, kas aktiivne ühendus on olemas ja millist tüüpi see on (Wi-Fi, mobiilne andmeside jne).

Näide võrgu kättesaadavuse kontrollimisest:

ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();

Alates Android API 29 soovitatakse kasutada NetworkCapabilities läbi ConnectivityManager:

ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
Network network = cm.getActiveNetwork();
NetworkCapabilities capabilities = cm.getNetworkCapabilities(network);
boolean hasInternet = capabilities != null && capabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);