我有檢查網絡連接使用的函數:getAllNetworkInfo檢測WiFi或移動連接,但不能兩個
ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo[] networkInfos = cm.getAllNetworkInfo();
但是,一旦Wifi網絡連接,爲斷開連接在移動網絡中給出
如何知道兩個網絡是否連接?
提前感謝您的時間。
我有檢查網絡連接使用的函數:getAllNetworkInfo檢測WiFi或移動連接,但不能兩個
ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo[] networkInfos = cm.getAllNetworkInfo();
但是,一旦Wifi網絡連接,爲斷開連接在移動網絡中給出
如何知道兩個網絡是否連接?
提前感謝您的時間。
試試這個:
ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
NetworkInfo wifi = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
NetworkInfo mobileNet = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if(netInfo!=null){
if(mobileNet.isConnected()){
System.out.println("Mobile Network is connected");
}
if(wifi.isConnected()){
System.out.println("Wi-fi Network is connected");
}
}
沒有抱歉,這是我已經使用,但沒有成功...謝謝 –
我怎麼會知道,如果這兩個網絡連接?
您可以創建肯定的方法來檢查兩種類型e.q.
if (networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
// do your stuff
}
if (networkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
// do your stuff
}
但在Android操作系統中,如果WiFi和移動網絡可用(並且可以連接到),OS會選擇無線上網的默認所以它會使用WiFi作爲活動的網絡連接。
沒有對不起,這是我已經使用,但沒有成功......謝謝 –
Android設備只能有一個連接! (WiFi或移動)
感謝您的答案。 但是,系統如何能夠在智能手機的頂部顯示這兩個圖標? –
你使用什麼設備? Android版本?您的兩個圖標是同時顯示數據傳輸還是隻顯示兩個網絡都打開? – AndrewS
嗨安德魯,爲我遲到抱歉。 我在Android 4.1.2上使用Wiko Cink Five,但圖標的可見性與設備相同。 –
您是否只需要網絡連接或需要獲取每個連接的網絡詳細信息? –
我需要通知用戶有關移動和WiFi連接。 –