在Android中检查WiFi和GPS是否已连接?

在Android中检查WiFi和GPS是否已连接?,android,gps,wifi,Android,Gps,Wifi,我需要在运行时检查手机中的wifi是否打开 如果它没有连接,我想显示对话框并直接转到设置/无线控件,以便用户启用它 适用于手机的wifi和Gps STAU。怎么做?你想为此醒来吗?有什么想法吗?您可以使用该类获取Wi-Fi的状态 请参阅打开Wi-Fi设置的问题。此问题用于状态。要检查设备是否通过移动或wifi连接,您可以使用以下代码: ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNE

我需要在运行时检查手机中的wifi是否打开

如果它没有连接,我想显示对话框并直接转到设置/无线控件,以便用户启用它

适用于手机的wifi和Gps STAU。怎么做?你想为此醒来吗?有什么想法吗?

您可以使用该类获取Wi-Fi的状态


请参阅打开Wi-Fi设置的问题。此问题用于状态。

要检查设备是否通过移动或wifi连接,您可以使用以下代码:

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

//mobile
State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();

//wifi
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
然后像这样使用它:

if (mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING) {
    //mobile
} else if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING) {
    //wifi
}

如何跟踪GPS的状态?如何跟踪GPS的状态?无法保证手机是networkInfo 0,wifi是networkInfo 1。检查“getActiveNetworkInfo”返回内容的类型可能更好这里的0表示ConnectivityManager.type\u MOBILE,1-ConnectivityManager.type\u wifi欢迎使用StackOverflow。您可能想解释为什么您的是更好的答案,而不是仅仅发布一些代码。单击“编辑”按钮添加进一步解释。
private boolean isNetworkAvailable() {
    ConnectivityManager connManager = (ConnectivityManager) 
            getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connManager.getActiveNetworkInfo();
    return activeNetworkInfo.isConnected();
}

public void onClick(DialogInterface dialog, int id) {
    // ...
    if (isNetworkAvailable()) {
        t3.setText("The Internet is available");
    } else {
        t3.setText("internet is not available");
    }
}
ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

//mobile
State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();

//wifi
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();