2017-10-20 7 views
0

je le chèque de code suivant si je connexion Internet active:Mon application ne montre pas Internet lorsque vous êtes connecté au routeur portable

private boolean hasNetworkAccess() { 
    try { 
     HttpURLConnection urlc = (HttpURLConnection) (new URL("http://www.screens.company").openConnection()); 
     urlc.setRequestProperty("User-Agent", "Test"); 
     urlc.setRequestProperty("Connection", "close"); 
     urlc.setConnectTimeout(3000); 
     urlc.connect(); 
     return (urlc.getResponseCode() == 200); 
    } catch (IOException e) { 
     Log.e("NETWORK", "Error checking internet connection."); 
    } 
    return false; 
} 

Quand je suis connecté à mon Wi-Fi à la maison/connecté à mon téléphone hotspot/connecté directement à mon routeur - tout est OK et cela montre que j'ai une connexion active.

Lorsque je connecte mon ordinateur à un routeur portable (TP-LINK), j'obtiens l'erreur.

Quelle pourrait être l'erreur juste que je suis mon routeur portatif?

PS Je vérifie tout le reste fonctionne quand je suis connecté au routeur comme navigateur internet, YouTube, etc. trace

pile d'erreurs:

java.net.SocketTimeoutException: failed to connect to www.screens.company/80.179.142.52 (port 80) after 3000ms 
+0

Vous devez enregistrer le 'IOException' et publier les détails de l'exception complète. –

+0

java.net.SocketTimeoutException: impossible de se connecter à www.screens.company/80.179.142.52 (port 80) après 3000ms – OrrGorenn

+0

Vous pouvez simplement avoir un réseau lent. Si vous augmentez le délai d'attente de connexion, cela fonctionne-t-il? –

Répondre

0

Essayez cette

  • Assurez-vous qu'il est connected to a network:

public boolean isNetworkAvailable(Context context) { 
    final ConnectivityManager connectivityManager = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)); 
    return connectivityManager.getActiveNetworkInfo() != null && connectivityManager.getActiveNetworkInfo().isConnected(); 
} 

  • Autre solution

public boolean isInternetAvailable() { 
    try { 
     final InetAddress address = InetAddress.getByName("www.google.com"); 
     return !address.equals(""); 
    } catch (UnknownHostException e) { 
     // Log error 
    } 
    return false; 
} 

-Permission nécessaire


<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
+0

Encore tout fonctionne mais je n'ai pas de connexion Internet – OrrGorenn

+0

Avez-vous donné la 'permission' de' Internet' –

+0

Ofcourse, quand je suis connecté à ma maison Wifi - tout va bien. – OrrGorenn