我如何检查我的设备是否与互联网连接
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何检查我的设备是否与互联网连接相关的知识,希望对你有一定的参考价值。
如何检查我的设备是否与互联网连接。
我有android设备,因为我启动wifi数据,但在那个wifi数据是本地网络但仍然显示你的互联网连接打开,而实际上不是。
那么如何通过I检查来检查这个类的互联网连接类 我会给你代码进行互联网连接检查
public class NetworkUtil {
public static int TYPE_WIFI = 1;
public static int TYPE_MOBILE = 2;
public static int TYPE_NOT_CONNECTED = 0;
public static int getConnectivityStatus(Context context) {
if (Build.VERSION.SDK_INT >= 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isAvailable() && cm.getActiveNetworkInfo().isConnected()) {
return TYPE_WIFI;
} else {
return TYPE_NOT_CONNECTED;
}
}
public static String getConnectivityStatusString(Context context) {
int conn = NetworkUtil.getConnectivityStatus(context);
String status = null;
if (conn == NetworkUtil.TYPE_WIFI) {
status = "Wifi enabled";
} else if (conn == NetworkUtil.TYPE_MOBILE) {
status = "Mobile data enabled";
} else if (conn == NetworkUtil.TYPE_NOT_CONNECTED) {
status = "Not connected to Internet";
}
return status;
}
public static boolean isInternetWorking() {
boolean success = false;
try {
URL url = new URL("https://google.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(10000);
connection.connect();
success = connection.getResponseCode() == 200;
} catch (IOException e) {
e.printStackTrace();
}
return success;
}
}
答案
请使用以下方法检查互联网连接。
private boolean isNetworkConnected() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
return cm.getActiveNetworkInfo() != null;
}
另一答案
0表示没有互联网1意味着互联网
private int checkInternetConnectivity() {
ConnectivityManager conMgr = (ConnectivityManager) getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = conMgr.getActiveNetworkInfo();
if (netInfo == null) {
return 0;
} else {
return 1;
}
}
另一答案
在课堂上使用这种方式
NetworkUtil networkUtil=new NetworkUtil(this)
if(networkUtil.isInternetWorking()){
Toast.makeText(this, "Connected", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "Not Connected", Toast.LENGTH_SHORT).show();
}
另一答案
您可以通过以下代码轻松检查Internet连接:
ConnectivityManager ConnectionManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = ConnectionManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected() ) {
//Connected
} else {
//Not connected
}
不要忘记在Manifest中声明权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
另一答案
上课: -
public class ConnctionDetector
{
ConnectivityManager connectivityManager;
Context context;
NetworkInfo info;
public ConnctionDetector(Context context)
{
this.context=context;
}
public boolean checkin(Context context)
{
boolean flag = false;
try {
connectivityManager = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
info = connectivityManager.getActiveNetworkInfo();
if (info.getType() == ConnectivityManager.TYPE_WIFI)
{
System.out.println(info.getTypeName());
flag = true;
}
if (info.getType() == ConnectivityManager.TYPE_MOBILE)
{
System.out.println(info.getTypeName());
flag = true;
}
} catch (Exception exception) {
System.out.println("Exception at network connection....."
+ exception);
}
return flag;
}
}
以及如何检查: -
boolean checkconnection = new
ConnctionDetector(getApplicationContext()).checkin(getApplicationContext());
if (!checkconnection) {
Toast.makeText(getApplicationContext(), "No Internet
Connection", Toast.LENGTH_SHORT).show();
}
以上是关于我如何检查我的设备是否与互联网连接的主要内容,如果未能解决你的问题,请参考以下文章
如何在 android 中检查我的 android 设备是不是有互联网连接? [复制]