Ich muss erkennen, ob eine Internetverbindung verfügbar ist und funktioniert gut in android. Ich muss diese Bedingungsprüfung aufrufen, bevor ich eine meiner WebView-Aktivitäten starte.Ermitteln, ob eine Internetverbindung verfügbar ist und unter Android API 15+ funktioniert
Bisher habe ich es geschafft, die isAvailable() Funktion implementieren in dieser Antwort gefunden: Class which check for connectivity
jedoch die oben Verfahren für den Fall, schlägt fehl, wenn Wi-Fi aktiviert ist, aber Ethernet-Stecker ist nicht angeschlossen. Manche sagen, mit Ping ist eine gute Idee. Aber ich kann dieses Feature nicht erfolgreich implementieren.
- Wie kann ich die Ping-Funktion in dem in der verwendeten Retrofit-API für das Senden und Empfangen von PHP Inhalt link
- Meiner Android-Anwendung bestimmten Code implementieren. Kann Retrofit Hilfe beim Überprüfen der Internetkonnektivität geben?
- Können Sie vorschlagen, andere einfache und einfach zu implementieren Methode zur Überprüfung Echtzeit Internet-Konnektivität?
Code I von this link verwendet haben: -
Klassenname: AppStatus
import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.util.Log; public class AppStatus { private static AppStatus instance = new AppStatus(); static Context context; ConnectivityManager connectivityManager; NetworkInfo wifiInfo, mobileInfo; boolean connected = false; public static AppStatus getInstance(Context ctx) { context = ctx.getApplicationContext(); return instance; } public boolean isOnline() { try { connectivityManager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); connected = networkInfo != null && networkInfo.isAvailable() && networkInfo.isConnected(); return connected; } catch (Exception e) { System.out.println("CheckConnectivity Exception: " + e.getMessage()); Log.v("connectivity", e.toString()); } return connected;
}
Dieser Code für Internet-Konnektivität bei der Prüfung hilft, aber nicht in der vorgenannter Zustand: -
if (AppStatus.getInstance(this).isOnline()) { Toast.makeText(this,"You are online!!!!",8000).show(); } else { Toast.makeText(this,"Internet Connection is required !",8000).show(); Log.v("Home", "############################You are not online!!!!"); finish(); }
Mögliches Duplikat [Wie Internet-Zugang auf Android überprüfen? InetAddress nie Timeouts ...] (http://stackoverflow.com/questions/1560788/how-to-check-internet-access-on-android-inetaddress-never-timeouts) – camelCaseCoder
Warten. Lass mich das überprüfen. – Hemang
Es scheint den PING-Code zu haben, den ich brauche. Ill versuchen, es mit meinem Code zu integrieren und zu sehen. – Hemang