Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the difference between access network state (ACCESS_NETWORK_STATE) and WIFI state (ACCESS_WIFI_STATE) permissions?

In Permissions tab of Android Manifest, in the drop down there are options called android.permission.ACCESS_NETWORK_STATE and android.permission.ACCESS_WIFI_STATE. What is the difference between them? Is ACCESS_NETWORK_STATE more generalized than ACCESS_WIFI_STATE?

like image 832
JDroid Avatar asked Feb 27 '12 00:02

JDroid


People also ask

What is Android permission Access_network_state for?

permission. ACCESS_NETWORK_STATE. Allows the app to view information about network connections such as which networks exist and are connected.

What is Call_phone permission?

Permission CALL_PHONE belong to dangerous permission group. So if your apps target SDK is 23 or higher and your device is running on Android 6.0 or higher, you must request for CALL_PHONE permission while the app is running. Example : String number = ("tel:" + numTxt.

What is Read_phone_state permission?

permission. READ_PHONE_STATE - You must ask the end user to grant this permission.) Allows read only access to the phone's state, and is used to determine the status of any ongoing calls. You need this permission so you can verify that your end user receives a phone call from TeleSign. android.

What is Android permission Receive_boot_completed?

permission. RECEIVE_BOOT_COMPLETED. run at startup. Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.


2 Answers

android.permission.ACCESS_NETWORK_STATE is needed for accessing ConnectivityManager (mainly for monitoring network connections in general), while android.permission.ACCESS_WIFI_STATE grants access to WifiManager (for managing all aspects of Wi-Fi connectivity in particular).

like image 63
guido Avatar answered Oct 12 '22 14:10

guido


ACCESS_NETWORK_STATE is required to check if you are connected to a network, it does not matter of what type it is (Wi-Fi, GPRS, UMTS, etc.).

ACCESS_WIFI_STATE is not required to prope for internet connections.

To answer most of the questions, yes you don’t need the ACCESS_WIFI_STATE if merely checking for connectivity.

like image 26
Tom el Safadi Avatar answered Oct 12 '22 12:10

Tom el Safadi