无线设置对话框

时间:2010-10-08 09:22:45

标签: android android-intent internet-connection android-wireless

我正在使用以下代码检查网络连接:

public static boolean haveInternet(Context ctx) 
{
    NetworkInfo info = (NetworkInfo) ((ConnectivityManager) ctx.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();

   if (info == null || !info.isConnected()) {
          return false;  // no connection
   }

  return true;   // true if having connection
}       

现在,在“无连接”时,我正在使用以下代码启动“无线设置”对话框:

    context.startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));

在这里,用户可以“打开/关闭”无线,现在我如何知道用户是否已经“打开”了Wi-Fi?即上述意图在成功的无线连接上返回了什么结果。我该如何检查?

我想我需要调用startActivityForResult方法,但不知道我该怎么做?

更新

我想和http://groups.google.is/group/android-developers/msg/6874a5e4675dffdb

一样

1 个答案:

答案 0 :(得分:2)

  

现在我如何知道用户是否已经“开启”Wi-Fi?即上述意图在成功的无线连接上返回了什么结果。我该怎么检查呢?

没有结果。您可以通过调用上面显示的代码或监控相关的广播意图来检查它(请参阅ConnectivityManager及其CONNECTIVITY_ACTIONWifiManager及其WIFI_STATE_CHANGED_ACTION或{{1} })。

  

我想我需要调用startActivityForResult方法,但不知道我该怎么做?

该活动不支持NETWORK_STATE_CHANGED_ACTION