将其添加到.class文件中,并在MainActivity.java中使用 如何在类文件中创建检查NetworkConnectionStatus并在mainactivity中使用
Private void checkNetworkConnectionStatus() {
boolean wifiConnected;
boolean mobileConnected;
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeInfo = connMgr.getActiveNetworkInfo();
if (activeInfo != null && activeInfo.isConnected()){ //connected with either mobile or wifi
wifiConnected = activeInfo.getType() == ConnectivityManager.TYPE_WIFI;
mobileConnected = activeInfo.getType() == ConnectivityManager.TYPE_MOBILE;
if (wifiConnected){ //wifi connected
}
else if (mobileConnected){ //mobile data connected
}
}
else { //no internet connection
}
}
答案 0 :(得分:1)
清单文件
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
尝试一下
public class NetworkUtil {
public static final int TYPE_WIFI = 1;
public static final int TYPE_MOBILE = 2;
public static final int TYPE_NOT_CONNECTED = 0;
public int getConnectivityStatus(Context context) {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (null != activeNetwork) {
if(activeNetwork.getType() == ConnectivityManager.TYPE_WIFI)
return TYPE_WIFI;
if(activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE)
return TYPE_MOBILE;
}
return TYPE_NOT_CONNECTED;
}
public boolean isInternetAvailable() {
try {
InetAddress ipAddr = InetAddress.getByName("www.google.com");
return !ipAddr.equals("");
} catch (Exception e) {
return false;
}
}
public boolean isNetworkConnected() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
return cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected();
}
}
答案 1 :(得分:0)
在清单文件中,
<!-- Learn about this code on MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/minmax -->
<div id="container">
<div>
<span>Item as wide as the content, but at most 300 pixels. Item as wide as the content, but at most 300 pixels. Item as wide as the content, but at most 300 pixels. Item as wide as the content, but at most 300 pixels. Item as wide as the content, but at most 300 pixels. </span>
</div>
<div>
Item with flexible width but a minimum of 200 pixels.
</div>
<div>
Inflexible item of 150 pixels width.
</div>
</div>
在“活动”中,此方法检查移动设备是否已连接到互联网,如果已连接,则返回true:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
}
答案 2 :(得分:0)
在另一个类上调用它时只需提供上下文。
首先在您的MainActivity中全局声明此内容。
Context context = this;
这是您如何调用当前活动上下文提供的课程。
new CheckNet().checkNetworkConnectionStatus(context);
然后使用需要参数的方法更改您的类:上下文
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
class CheckNet {
void checkNetworkConnectionStatus(Context context) {
boolean wifiConnected;
boolean mobileConnected;
ConnectivityManager connMgr = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeInfo = connMgr.getActiveNetworkInfo();
if (activeInfo != null && activeInfo.isConnected()) { //connected with either mobile or wifi
wifiConnected = activeInfo.getType() == ConnectivityManager.TYPE_WIFI;
mobileConnected = activeInfo.getType() == ConnectivityManager.TYPE_MOBILE;
if (wifiConnected) { //wifi connected
} else if (mobileConnected) { //mobile data connected
}
} else { //no internet connection
}
}
}