Junior — Middle
Kaip galima nustatyti tinklo ryšio prieinamumą?
sobes.tech AI
Atsakymas iš AI
Android dažniausiai naudojama ConnectivityManager klasė tinklo ryšio prieinamumui nustatyti. Su jos pagalba galima patikrinti, ar yra aktyvus ryšys ir kokio tipo jis yra (Wi-Fi, mobilieji duomenys ir kt.).
Tinklo prieinamumo patikrinimo pavyzdys:
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
Nuo Android API 29 rekomenduojama naudoti NetworkCapabilities per 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);