Android:显示一个对话框以启用wifi

Android:显示一个对话框以启用wifi,android,android-alertdialog,android-wifi,Android,Android Alertdialog,Android Wifi,如果wifi被禁用,我希望向用户显示一个对话框,该对话框可以决定用户是否要启用或禁用wifi 我可以查看wifi是否启用,但如何显示设置对话框 这是我正在使用的代码: if(wifiMan.isWifiEnabled()==false){ Log.i("DEBUG","turning on wifi"); wifiMan.setWifiEnabled(true);//I would like that the user decide } else { Log

如果wifi被禁用,我希望向用户显示一个对话框,该对话框可以决定用户是否要启用或禁用wifi

我可以查看wifi是否启用,但如何显示设置对话框

这是我正在使用的代码:

if(wifiMan.isWifiEnabled()==false){
    Log.i("DEBUG","turning on wifi");
    wifiMan.setWifiEnabled(true);//I would like that the user decide
    }

  else {  
  Log.i("DEBUG","wifi is on");
   }
PS:我使用了:startActivity(新意图(设置、动作和无线设置));但我得到了这个错误:操作设置无法解析或不是字段

我想进行这个互动对话:


如果不起作用,您可以尝试这种方法。问题是您可能导入了错误的命名空间。 试试这个

android.app.activity.startActivity(新增) android.content.Intent.Intent(android.provider.settings.settings.ACTION\u WIFI\u SE‌​),

在上述情况下不起作用。你也可以试试这个

startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK));
创建如下对话框:

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
                context);

            // set title
            alertDialogBuilder.setTitle("Wifi Settings");

            // set dialog message
            alertDialogBuilder
                .setMessage("Do you want to enable WIFI ?")
                .setCancelable(false)
                .setPositiveButton("Yes",new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,int id) {
                        //enable wifi
                        wifiMan.setWifiEnabled(true);
                    }
                  })
                .setNegativeButton("No",new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,int id) {
                        //disable wifi
                        wifiMan.setWifiEnabled(false);
                    }
                });

                // create alert dialog
                AlertDialog alertDialog = alertDialogBuilder.create();

                // show it
                alertDialog.show();
试试这个:

startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK));
嗨,看一看

对于不同类型的意图操作,可用于启动各种设置屏幕

在参考了一些网站后,这些是给出的最佳解决方案

    android.app.activity.startActivity(newandroid.content.Intent.Intent(android.provider.settings.Settings.ACTION_WIFI_SE‌​TTINGS)); 

    or 

    using, startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));

or

context.startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK));
这里有一些教程链接,解释了你的想法


您是否在清单中设置了权限?是的,我可以启用wifi,但我希望该用户决定是否启用。是否导入,导入android.provider.Settings;第二种方法可行,但它会引导我进入设置wifi菜单。我需要的是在编辑中显示一条交互式消息。为什么不显示一个简单的警报对话框,并在那里添加“是”“否”按钮,然后单击“是”按钮以编程方式启用wifi,或者禁用该按钮。是的,我想做的是:D我的问题是如何显示对话框。谢谢,它可以工作,但仍然有一个小问题。单击“后退”按钮时,此警报将消失。如果单击“后退”按钮,我将完全退出应用程序,我如何处理此警报?是的。因此,现在根据需要更改您的逻辑。这样您就可以得到您想要的。此方法可行,但它会将我引导到设置wifi菜单。我需要的是在编辑中显示一条交互式消息。好的,但是你没有提到你需要一条交互式消息,所以我建议使用这种方法。无论如何,如果你的问题解决了,那就好了。干杯