2015-07-08 9 views
6

Mi chiedevo se il metodo seguente verifica che sia collegato a una rete e che possa effettivamente connettersi a Internet.Verifica rete e connessione Internet - Android

Non solo connesso a una rete che non mi consente di accedere a Internet?

public boolean isNetworkAvailable() { 
    ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo networkInfo = manager.getActiveNetworkInfo(); 

    boolean isAvailable = false; 
    if (networkInfo != null && networkInfo.isConnected()) { 
     isAvailable = true; 
    } 
    return isAvailable; 
} 

Penso, ma non ne sono sicuro al 100%.

Grazie

+0

'networkInfo.isConnected()' verifica se esiste connettività di rete e se è possibile stabilire connessioni e passare i dati. È inoltre possibile utilizzare 'networkInfo.isConnectedOrConnecting()' per verificare se la connettività di rete esiste o sta per essere stabilita. Inoltre, assicurati di aggiungere le autorizzazioni a AndroidManifest.xml per accedere a wifi e allo stato della rete, rispettivamente: '' ' ' –

+0

Possibile duplicato di [Come verificare l'accesso a Internet su Android? InetAddress non scade mai) (https://stackoverflow.com/questions/1560788/how-to-check-internet-access-on-android-inetaddress-never-times-out) –

risposta

2

Date un'occhiata in one of my old answers. Dispone di due metodi diversi: 1. per verificare se un dispositivo è connesso a una rete 2. per verificare se un dispositivo è connesso a Internet.

0

Il codice qui sotto verificherà la connettività internet utilizzando Kotlin in studio Android:

private fun amIConnected(): Boolean { 
    val connectivityManager = this.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager 
    val activeNetworkInfo = connectivityManager.activeNetworkInfo 
    return activeNetworkInfo != null && activeNetworkInfo.isConnected 
}