gpt4 book ai didi

Android 连接检测在 Android Studio 2.2.1 中不起作用。出了什么问题?

转载 作者:行者123 更新时间:2023-11-29 17:12:08 24 4
gpt4 key购买 nike

之前我用来验证互联网连接并相应地显示数据。如果连接到 Internet,我会从服务器加载数据,如果没有 Internet 连接,我会加载离线数据。但是从 Android Studio 2.2.1 开始,这似乎不起作用。我使用的代码是:

 import android.app.Service;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;

public class ConnectionDetector {

Context context;

public ConnectionDetector(Context context) {
this.context = context;
}

public boolean isConnected(){
ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Service.CONNECTIVITY_SERVICE);

if(connectivity!=null){
NetworkInfo info = connectivity.getActiveNetworkInfo();

if(info!=null){
if(info.getState()== NetworkInfo.State.CONNECTED){
return true;
}
}

}
return false;
}

我会创建这个类的新对象:

   cd = new ConnectionDetector(this);

然后使用:

  if(cd.isConnected()){
-----------
---------
}else {
------
---
}

但这在 2.2.1 中不起作用需要进行哪些更改才能使其在 2.2.1 中运行?我不是编程专家。

最佳答案

请将此用于设备已连接或未连接。

 public class ConnectivityDetector {
public static boolean isConnectingToInternet(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
return false;
}}

你可以这样检查:

if (ConnectivityDetector.isConnectingToInternet(ChangePasswordActivity.this)) {
//Your Code when connected.
} else {
Toast.makeText(MainActivity.this, "Please check your Internet connection.", Toast.LENGTH_SHORT).show();
}

关于Android 连接检测在 Android Studio 2.2.1 中不起作用。出了什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40123952/

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