[英]How to check the Internet connection in android when WIFI is On but No Data Connection?
嗨,當我從應用程序點擊服務器時,我的應用程序崩潰了,因為我的手機連接到其他手機的 Wifi 熱點,因為移動數據被禁用,如果我檢查 wifi 的連接狀態,它將返回 true,所以我允許點擊服務器並且我的應用程序崩潰了...告訴我如何處理這種情況。
使用此方法檢查您的互聯網是否正常工作
public static boolean hasActiveInternetConnection(Context context) {
if (isNetworkAvailable(context)) {
try {
HttpURLConnection urlc = (HttpURLConnection) (new URL("http://www.google.com").openConnection());
urlc.setRequestProperty("User-Agent", "Test");
urlc.setRequestProperty("Connection", "close");
urlc.setConnectTimeout(1500);
urlc.connect();
return (urlc.getResponseCode() == 200);
} catch (IOException e) {
Log.e(LOG_TAG, "Error checking internet connection", e);
}
} else {
Log.d(LOG_TAG, "No network available!");
}
return false;
}
確保您不在主線程上運行此代碼,否則您將收到 NetworkOnMainThread 異常(在 Android 3.0 或更高版本中)。 請改用 AsyncTask 或 Runnable。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.