如何从我的应用程序使用Android调用Wi-Fi设置屏幕

通常,我通过点击Settings > Wireless controls > wifi settings ,在模拟器上获得Wi-Fi设置屏幕。 当按下我创build的Wi-Fibutton时,我需要从我的程序直接进入Wi-Fi设置屏幕。 联系人,我们可以通过使用Intent.setData(android.provider.contacts ………..)来处理调用日志。 有没有什么办法可以从android程序打开设置子菜单/菜单?
请给我build议或在这个示例代码。

Solutions Collecting From Web of "如何从我的应用程序使用Android调用Wi-Fi设置屏幕"

看一下android.provider.Settings可以用来启动各种设置屏幕(例如ACTION_WIFI_SETTINGS )的一系列Intent操作。

编辑:添加编码线。

startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));

 ConnectivityManager manager = (ConnectivityManager) getSystemService(MainActivity.CONNECTIVITY_SERVICE); /* * 3G confirm */ Boolean is3g = manager.getNetworkInfo( ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting(); /* * wifi confirm */ Boolean isWifi = manager.getNetworkInfo( ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting(); if (is3g) { textView.setText("3G"); } else if (isWifi) { textView.setText("wifi"); } else { textView.setText("nothing"); // Activity transfer to wifi settings startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS)); } 

只需要调用一个上下文的意图,试试这个:

 startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK)); 

如果你想从xml文件中完成:

  <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:key="@string/setting_key" android:summary="@string/setting_summary" android:title="@string/setting_title" > <intent android:action="android.settings.WIRELESS_SETTINGS"/> </PreferenceScreen> 

这将在您的设置中显示一个将调用平台设置活动的条目

这里是打开wifi设置页面的代码片段

  Intent intent = new Intent(Intent.ACTION_MAIN, null); intent.addCategory(Intent.CATEGORY_LAUNCHER); ComponentName cn = new ComponentName("com.android.settings", "com.android.settings.wifi.WifiSettings"); intent.setComponent(cn); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity( intent);