gpt4 book ai didi

android - 检查网络连接android

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:31:10 24 4
gpt4 key购买 nike

在我在模拟器上测试的应用程序中,我使用以下代码检查网络连接 (WIFI):

    public boolean isOnline() {
ConnectivityManager cm =
(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting()) {
return true;
}
return false;
}

此方法始终返回 true,即使我禁用了计算机的无线连接...是模拟器问题还是其他原因?

如果这不是检查网络连接的正确方法,我该怎么做?

最佳答案

最好 (1) 传入上下文,以便每个 Activity 都可以调用此函数,以及 (2) 使此函数静态化:

 public boolean isNetworkOnline() {
boolean status=false;
try{
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getNetworkInfo(0);
if (netInfo != null && netInfo.getState()==NetworkInfo.State.CONNECTED) {
status= true;
}else {
netInfo = cm.getNetworkInfo(1);
if(netInfo!=null && netInfo.getState()==NetworkInfo.State.CONNECTED)
status= true;
}
}catch(Exception e){
e.printStackTrace();
return false;
}
return status;

}

关于android - 检查网络连接android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10009804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com