Android programmatically enable wifi

Is it possible to programmatically enable wifi on Android 10 devices?

Since setWifiEnabled is deprecated on Android 10, how does one programatically enable wifi on Android 10 devices? Is it not possible to programmatically enable wifi at all on Android 10+ (SDK 29) ?

3 Answers 3

No, This is not possible to enable or disable Wi-Fi programmatically from Android-10 API level 29 [Until google provides an alternative solution].

For applications targeting Build.VERSION_CODES.Q or above, this API will always return false and will have no effect.

If apps are targeting an older SDK ( Build.VERSION_CODES.P or below), they can continue to use this API.

There is an issue 128554616 which already has been created in google issuetracker forum. You can see there for any updated info.

I have updated my answer with an issuetracker which is already created in google forum. hope you can find more info from thers. Happy Coding.

I am using the val wifiManager = context.getSystemService(Context.WIFI_SERVICE) as WifiManager wifiManager.isWifiEnabled = true FOR ENABLING THE WIFI in android 8 BUT its not working. Any other option

Now in android 10 you can do like this

Intent panelIntent = new Intent(Settings.Panel.ACTION_INTERNET_CONNECTIVITY); startActivityForResult(panelIntent); 

ACTION_INTERNET_CONNECTIVITY Shows settings related to internet connectivity, such as Airplane mode, Wi-Fi, and Mobile Data.

ACTION_WIFI Shows Wi-Fi settings, but not the other connectivity settings. This is useful for apps that need a Wi-Fi connection to perform large uploads or downloads.

ACTION_NFC Shows all settings related to near-field communication (NFC).

ACTION_VOLUME Shows volume settings for all audio streams.

Источник

How to enable/disable wifi or internet connection programmatically in Android?

In the world of mobile app development, it is often necessary to control the device’s internet and Wi-Fi connectivity programmatically. For example, you may want to disable the Wi-Fi or internet connection in certain circumstances, such as when the device is running low on battery or the user has requested to turn off the connection. On Android, this can be achieved through the use of the ConnectivityManager class, which provides access to the device’s network information and helps to manage its connectivity state.

Читайте также:  Адаптер archer t3u сетевой wifi

Method 1: Disable Wi-Fi

To disable Wi-Fi programmatically in Android, you can use the following steps:

  1. Get an instance of the WifiManager class using the getSystemService method and pass in the Context.WIFI_SERVICE parameter.
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifiManager.setWifiEnabled(false);

Here’s the complete code example:

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifiManager.setWifiEnabled(false);

This code will disable Wi-Fi programmatically in Android.

Method 2: Disable Mobile Data

To disable mobile data programmatically in Android, you can use the ConnectivityManager class. Here are the steps to do it:

ConnectivityManager connManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
boolean isMobileDataEnabled = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnected();
if (isMobileDataEnabled)  connManager.setNetworkPreference(ConnectivityManager.TYPE_WIFI); connManager.setNetworkPreference(ConnectivityManager.TYPE_MOBILE); connManager.setMobileDataEnabled(false); >

Here, we first set the network preference to Wi-Fi and then to mobile data. This is to ensure that mobile data is disabled even if the device is currently using it for internet connectivity.

That’s it! With these simple steps, you can programmatically disable mobile data in your Android app.

Method 3: Enable Wi-Fi

To enable Wi-Fi programmatically in Android, you can use the WifiManager class. Here are the steps to do it:

WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
if (!wifiManager.isWifiEnabled())  // Wi-Fi is disabled, enable it wifiManager.setWifiEnabled(true); >
if (wifiManager.isWifiEnabled())  // Wi-Fi is enabled, disable it wifiManager.setWifiEnabled(false); >
WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); if (!wifiManager.isWifiEnabled())  wifiManager.setWifiEnabled(true); > // To disable Wi-Fi // if (wifiManager.isWifiEnabled()) // wifiManager.setWifiEnabled(false); // >

That’s it! You can now enable Wi-Fi programmatically in your Android app.

Method 4: Enable Mobile Data

To enable or disable internet connectivity programmatically in Android, you can use the ConnectivityManager class. Here is an example of how to enable mobile data:

uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
// To enable mobile data try  final Class?> conmanClass = Class.forName(cm.getClass().getName()); final Field iConnectivityManagerField = conmanClass.getDeclaredField("mService"); iConnectivityManagerField.setAccessible(true); final Object iConnectivityManager = iConnectivityManagerField.get(cm); final Class?> iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName()); final Method setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE); setMobileDataEnabledMethod.setAccessible(true); setMobileDataEnabledMethod.invoke(iConnectivityManager, true); > catch (Exception e)  e.printStackTrace(); > // To disable mobile data try  final Class?> conmanClass = Class.forName(cm.getClass().getName()); final Field iConnectivityManagerField = conmanClass.getDeclaredField("mService"); iConnectivityManagerField.setAccessible(true); final Object iConnectivityManager = iConnectivityManagerField.get(cm); final Class?> iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName()); final Method setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE); setMobileDataEnabledMethod.setAccessible(true); setMobileDataEnabledMethod.invoke(iConnectivityManager, false); > catch (Exception e)  e.printStackTrace(); >

Note: This method requires the app to have the CHANGE_NETWORK_STATE permission and may not work on all Android versions or devices.

Источник

How to enable or disable Wifi in android programmatically

So you can enable or disable WiFi using WifiManger class.
You need to add extra permissions in AndroidManifest.xml to enable or disable Wifi.

Source code:

Step 1 :

Create an android application project named “EnableDisableWiFiApp”.

Step 2:

Add following permissions in AndoridManifest.xml.

Go to app -> src -> main -> AndroidManifest.xml and add above permissions. AndroidManifest.xml will look like below xml.

Step 3 :

Change res ->layout -> activity_main.xml as below:

Step 4:

Change src/main/packageName/MainActivity.java as below:

Step 5:

Run the app
When you run the app, you will get below screen:

When you click on toggle button, you will get below screen:

Was this post helpful?

How to fix the Google Play Services Keeps Stopping Error on Android

Android SQLite Database CRUD example

Retrofit Android Tutorial

Android JSON parsing tutorial using Volley

Android Restful web services tutorial

Android Switch button example

Android ToggleButton example

Android Spinner Dropdown Example

Android Custom Toast example

How to load html string in WebView in Android

Share this

Author

Bash sort CSV by column

Bash Sort CSV by Column

Table of ContentsBash Sort CSV by ColumnUsing sort CommandUsing csvsort UtilityBash Sort CSV by Multiple Columns Bash Sort CSV by Column Using sort Command Use bash’s sort command to sort the CSV file by column. [crayon-64b500df1e096104577423/] [crayon-64b500df1e09e442953189/] [crayon-64b500df1e09f901656012/] In this example, the sort command is used to sort the myFile.csv file by column. Here, the […]

Bash write variable to file

Bash Write Variable to File

Table of ContentsUsing echo CommandUsing printf StatementUsing Here String OperatorUsing Here Document Operator Using echo Command Use the echo command with redirection operator (>) to write variable to file in Bash. [crayon-64b500df1e33e325748120/] [crayon-64b500df1e342495424804/] Use the echo command with the append operator (>>) to append a variable to the end of the specified file in Bash. […]

PowerShell remove special characters from String

PowerShell Remove Special Characters from String

Table of ContentsUsing Regex.Replace() MethodUsing String.Replace() MethodUsing -replace OperatorUsing Char.IsLetterOrDigit MethodUsing String.Join() Method Using Regex.Replace() Method Use the Regex.Replace() method to remove special characters from the specified string in PowerShell. [crayon-64b500df1e5a3344384989/] [crayon-64b500df1e5a6885157621/] First, we declared a variable named $str and set its value to a string containing some special characters. Then, we used the Replace() […]

PowerShell remove header from Output

PowerShell Remove Header from Output

Table of ContentsRemoving Header from Imported DataUse -HideTableHeaders ParameterUse Select-Object Cmdlet with -ExpandProperty ParameterUse Select-Object Cmdlet with the -Skip ParameterUse Select-Object with ForEach-Object CmdletRemoving Header from PS Command’s Output For this article, we will use a CSV file, you can use your own, but we will be using inputFile.csv containing the following data: [crayon-64b500df1e9a7058230838/] Removing […]

Bash Append to Array

Bash Append to Array

Table of ContentsUsing Shorthand OperatorUsing for LoopUsing array[index]=value SyntaxUsing declare CommandUsing mapfile CommandUsing custom function push() Function Using Shorthand Operator Use the Shorthand operator to append one element to an array in Bash. [crayon-64b500df1ec2a677696665/] [crayon-64b500df1ec2e653010355/] First, we declared an array (my_array) with three initial elements element1, element2, and element3. Then, we used the shorthand operator […]

Bash get curl response code

Bash Get Curl Response Code

Table of ContentsUsing cUrl command with -w, -s and -o optionsFor Get MethodFor POST RequestFor PUT RequestFor DELETE RequestFor HEAD Request Using cUrl command with -w, -s and -o options For Get Method Use the -w or —write-out option in combination with the % format specifier to get curl response code in Bash for get […]

Источник

How to enable/disable WiFi from an application?

You also need to request the permission in your AndroidManifest.xml :

@Codii, I know this is old, but I am trying to do this within a dialogfragment. However, it says «Cannot resolve method ‘getSystemService(java.lang.String)’ I am not sure on what I need to do. And I have those permissions

To enable/disable WiFi in your application you need to use WiFiManager class. Create an Object of WiFiManager class to get the services of WiFi.

WifiManager wifi; wifi=(WifiManager)getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(false);//Turn off Wifi wifi.setWifiEnabled(true);//Turn on Wifi 

And you have to put the following permissions in AndroidManifest.xml

To get the whole sample code of enable/disable Wifi in android with UI visit this website

when i do it in my project, but when these code is executed, the system will give a prompt says the app is trying to use wlan whether allows it. and it appears every time! can i enable wlan without the prompt window .

 Intent gpsOptionsIntent = new Intent( android.provider.Settings.ACTION_WIFI_SETTINGS); startActivityForResult(gpsOptionsIntent,0); 

To enable/disable wifi from an app in Android Q (Android 10) use Settings Panel:

val panelIntent = Intent(Settings.Panel.ACTION_INTERNET_CONNECTIVITY) startActivityForResult(panelIntent, 0) 

On previous versions of Android this should work (appropriate permissions should be added to AndroidManifest file, see answers above):

(context?.getSystemService(Context.WIFI_SERVICE) as? WifiManager)?.apply < isWifiEnabled = true /*or false*/ >

Resulting code might look something like this:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) < val panelIntent = Intent(Settings.Panel.ACTION_INTERNET_CONNECTIVITY) startActivityForResult(panelIntent, 0) >else < (context?.getSystemService(Context.WIFI_SERVICE) as? WifiManager)?.apply < isWifiEnabled = true /*or false*/ >> 

Where context is a reference to android.content.Context object.

Источник

Оцените статью
Adblock
detector