Как я могу вызвать экран настроек Wi-Fi из своего приложения с помощью Android

Обычно я получаю экран настройки Wi-Fi на эмуляторе, нажимая на Settings > Wireless controls > wifi settings . Мне нужно перейти непосредственно к экрану настроек Wi-Fi из моей программы, нажав на кнопку Wi-Fi, которую я создал. Контакты, вызовы Журналы, которые мы можем обрабатывать с помощью Intent.setData (android.provider.contacts ………..). Есть ли способ открыть подменю / меню настроек из программы андроида?
Пожалуйста, дайте мне совет или образец кода.

Solutions Collecting From Web of "Как я могу вызвать экран настроек Wi-Fi из своего приложения с помощью Android"

Посмотрите на android.provider.Settings для серии действий Intent вы можете использовать для запуска различных экранов настроек (например, ACTION_WIFI_SETTINGS ).

EDIT: добавьте строку кодирования.

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)); } - 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);