Loading api/system-current.txt +4 −2 Original line number Diff line number Diff line Loading @@ -58,7 +58,7 @@ package android { field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA"; field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"; field public static final String CONFIGURE_WIFI_DISPLAY = "android.permission.CONFIGURE_WIFI_DISPLAY"; field public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL"; field @Deprecated public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL"; field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"; field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS"; field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION"; Loading Loading @@ -126,6 +126,7 @@ package android { field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE"; field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE"; field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING"; field public static final String NETWORK_FACTORY = "android.permission.NETWORK_FACTORY"; field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING"; field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN"; field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS"; Loading @@ -135,6 +136,7 @@ package android { field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP"; field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS"; field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE"; field public static final String OBSERVE_NETWORK_POLICY = "android.permission.OBSERVE_NETWORK_POLICY"; field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS"; field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS"; field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG"; Loading Loading @@ -4342,7 +4344,7 @@ package android.net { public class ConnectivityManager { method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createNattKeepalive(@NonNull android.net.Network, @NonNull android.os.ParcelFileDescriptor, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull java.net.Socket, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); method @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) public String getCaptivePortalServerUrl(); method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl(); method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener); method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported(); method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback); Loading core/java/android/net/ConnectivityManager.java +16 −5 Original line number Diff line number Diff line Loading @@ -1006,7 +1006,7 @@ public class ConnectivityManager { * * @hide */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_STACK) @Nullable public Network getActiveNetworkForUid(int uid) { return getActiveNetworkForUid(uid, false); Loading Loading @@ -1135,7 +1135,7 @@ public class ConnectivityManager { * * {@hide} */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_STACK) @UnsupportedAppUsage public NetworkInfo getActiveNetworkInfoForUid(int uid) { return getActiveNetworkInfoForUid(uid, false); Loading Loading @@ -1370,10 +1370,14 @@ public class ConnectivityManager { * The system network validation may be using different strategies to detect captive portals, * so this method does not necessarily return a URL used by the system. It only returns a URL * that may be relevant for other components trying to detect captive portals. * * @hide * @deprecated This API returns URL which is not guaranteed to be one of the URLs used by the * system. */ @Deprecated @SystemApi @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl() { try { return mService.getCaptivePortalServerUrl(); Loading Loading @@ -2399,6 +2403,7 @@ public class ConnectivityManager { * @return an array of 0 or more {@code String} of tethered dhcp ranges. * {@hide} */ @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String[] getTetheredDhcpRanges() { try { return mService.getTetheredDhcpRanges(); Loading Loading @@ -2978,7 +2983,7 @@ public class ConnectivityManager { * HTTP proxy. A {@code null} value will clear the global HTTP proxy. * @hide */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(ProxyInfo p) { try { mService.setGlobalProxy(p); Loading Loading @@ -3123,6 +3128,7 @@ public class ConnectivityManager { * Get the mobile provisioning url. * {@hide} */ @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getMobileProvisioningUrl() { try { return mService.getMobileProvisioningUrl(); Loading Loading @@ -3169,6 +3175,7 @@ public class ConnectivityManager { /** {@hide} - returns the factory serial number */ @UnsupportedAppUsage @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkFactory(Messenger messenger, String name) { try { return mService.registerNetworkFactory(messenger, name); Loading @@ -3179,6 +3186,7 @@ public class ConnectivityManager { /** {@hide} */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023) @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void unregisterNetworkFactory(Messenger messenger) { try { mService.unregisterNetworkFactory(messenger); Loading @@ -3196,6 +3204,7 @@ public class ConnectivityManager { * Register a NetworkAgent with ConnectivityService. * @return NetID corresponding to NetworkAgent. */ @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp, NetworkCapabilities nc, int score, NetworkMisc misc) { return registerNetworkAgent(messenger, ni, lp, nc, score, misc, Loading @@ -3207,6 +3216,7 @@ public class ConnectivityManager { * Register a NetworkAgent with ConnectivityService. * @return NetID corresponding to NetworkAgent. */ @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp, NetworkCapabilities nc, int score, NetworkMisc misc, int factorySerialNumber) { try { Loading Loading @@ -4201,7 +4211,7 @@ public class ConnectivityManager { * * @hide */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void startCaptivePortalApp(Network network) { try { mService.startCaptivePortalApp(network); Loading Loading @@ -4317,6 +4327,7 @@ public class ConnectivityManager { * Resets all connectivity manager settings back to factory defaults. * @hide */ @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void factoryReset() { try { mService.factoryReset(); Loading core/res/AndroidManifest.xml +13 −1 Original line number Diff line number Diff line Loading @@ -1614,6 +1614,14 @@ <permission android:name="android.permission.NETWORK_STACK" android:protectionLevel="signature" /> <!-- @SystemApi @hide Allows an application to observe network policy changes. --> <permission android:name="android.permission.OBSERVE_NETWORK_POLICY" android:protectionLevel="signature" /> <!-- @SystemApi @hide Allows applications to register network factory or agent --> <permission android:name="android.permission.NETWORK_FACTORY" android:protectionLevel="signature" /> <!-- Allows Settings and SystemUI to call methods in Networking services <p>Not for use by third-party or privileged applications. @SystemApi Loading Loading @@ -1744,7 +1752,11 @@ <permission android:name="android.permission.NFC_TRANSACTION_EVENT" android:protectionLevel="normal" /> <!-- @SystemApi Allows an internal user to use privileged ConnectivityManager APIs. <!-- @deprecated This permission used to allow too broad access to sensitive methods and all its uses have been replaced by a more appropriate permission. Most uses have been replaced with a NETWORK_STACK or NETWORK_SETTINGS check. Please look up the documentation of the individual functions to figure out what permission now protects the individual function. @SystemApi Allows an internal user to use privileged ConnectivityManager APIs. @hide --> <permission android:name="android.permission.CONNECTIVITY_INTERNAL" android:protectionLevel="signature|privileged" /> Loading core/res/res/values/config.xml +1 −1 Original line number Diff line number Diff line Loading @@ -508,7 +508,7 @@ --> <string translatable="false" name="config_mobile_hotspot_provision_app_no_ui"></string> <!-- Sent in response to a provisioning check. The caller must hold the permission android.permission.CONNECTIVITY_INTERNAL for Settings to permission android.permission.TETHER_PRIVILEGED for Settings to receive this response. See config_mobile_hotspot_provision_response Loading core/tests/ConnectivityManagerTest/AndroidManifest.xml +2 −2 Original line number Diff line number Diff line Loading @@ -73,9 +73,9 @@ <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_SETTINGS" /> <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" /> <!-- This permission is added for API call setAirplaneMode() in ConnectivityManager --> <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" /> <uses-permission android:name="android.permission.TETHER_PRIVILEGED" /> <!-- This permission is added for API call setAirplaneMode() in ConnectivityManager --> <uses-permission android:name="android.permission.NETWORK_SETTINGS" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.DEVICE_POWER" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> Loading Loading
api/system-current.txt +4 −2 Original line number Diff line number Diff line Loading @@ -58,7 +58,7 @@ package android { field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA"; field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"; field public static final String CONFIGURE_WIFI_DISPLAY = "android.permission.CONFIGURE_WIFI_DISPLAY"; field public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL"; field @Deprecated public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL"; field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"; field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS"; field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION"; Loading Loading @@ -126,6 +126,7 @@ package android { field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE"; field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE"; field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING"; field public static final String NETWORK_FACTORY = "android.permission.NETWORK_FACTORY"; field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING"; field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN"; field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS"; Loading @@ -135,6 +136,7 @@ package android { field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP"; field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS"; field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE"; field public static final String OBSERVE_NETWORK_POLICY = "android.permission.OBSERVE_NETWORK_POLICY"; field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS"; field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS"; field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG"; Loading Loading @@ -4342,7 +4344,7 @@ package android.net { public class ConnectivityManager { method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createNattKeepalive(@NonNull android.net.Network, @NonNull android.os.ParcelFileDescriptor, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull java.net.Socket, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); method @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) public String getCaptivePortalServerUrl(); method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl(); method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener); method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported(); method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback); Loading
core/java/android/net/ConnectivityManager.java +16 −5 Original line number Diff line number Diff line Loading @@ -1006,7 +1006,7 @@ public class ConnectivityManager { * * @hide */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_STACK) @Nullable public Network getActiveNetworkForUid(int uid) { return getActiveNetworkForUid(uid, false); Loading Loading @@ -1135,7 +1135,7 @@ public class ConnectivityManager { * * {@hide} */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_STACK) @UnsupportedAppUsage public NetworkInfo getActiveNetworkInfoForUid(int uid) { return getActiveNetworkInfoForUid(uid, false); Loading Loading @@ -1370,10 +1370,14 @@ public class ConnectivityManager { * The system network validation may be using different strategies to detect captive portals, * so this method does not necessarily return a URL used by the system. It only returns a URL * that may be relevant for other components trying to detect captive portals. * * @hide * @deprecated This API returns URL which is not guaranteed to be one of the URLs used by the * system. */ @Deprecated @SystemApi @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl() { try { return mService.getCaptivePortalServerUrl(); Loading Loading @@ -2399,6 +2403,7 @@ public class ConnectivityManager { * @return an array of 0 or more {@code String} of tethered dhcp ranges. * {@hide} */ @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String[] getTetheredDhcpRanges() { try { return mService.getTetheredDhcpRanges(); Loading Loading @@ -2978,7 +2983,7 @@ public class ConnectivityManager { * HTTP proxy. A {@code null} value will clear the global HTTP proxy. * @hide */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(ProxyInfo p) { try { mService.setGlobalProxy(p); Loading Loading @@ -3123,6 +3128,7 @@ public class ConnectivityManager { * Get the mobile provisioning url. * {@hide} */ @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getMobileProvisioningUrl() { try { return mService.getMobileProvisioningUrl(); Loading Loading @@ -3169,6 +3175,7 @@ public class ConnectivityManager { /** {@hide} - returns the factory serial number */ @UnsupportedAppUsage @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkFactory(Messenger messenger, String name) { try { return mService.registerNetworkFactory(messenger, name); Loading @@ -3179,6 +3186,7 @@ public class ConnectivityManager { /** {@hide} */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023) @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void unregisterNetworkFactory(Messenger messenger) { try { mService.unregisterNetworkFactory(messenger); Loading @@ -3196,6 +3204,7 @@ public class ConnectivityManager { * Register a NetworkAgent with ConnectivityService. * @return NetID corresponding to NetworkAgent. */ @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp, NetworkCapabilities nc, int score, NetworkMisc misc) { return registerNetworkAgent(messenger, ni, lp, nc, score, misc, Loading @@ -3207,6 +3216,7 @@ public class ConnectivityManager { * Register a NetworkAgent with ConnectivityService. * @return NetID corresponding to NetworkAgent. */ @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp, NetworkCapabilities nc, int score, NetworkMisc misc, int factorySerialNumber) { try { Loading Loading @@ -4201,7 +4211,7 @@ public class ConnectivityManager { * * @hide */ @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void startCaptivePortalApp(Network network) { try { mService.startCaptivePortalApp(network); Loading Loading @@ -4317,6 +4327,7 @@ public class ConnectivityManager { * Resets all connectivity manager settings back to factory defaults. * @hide */ @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void factoryReset() { try { mService.factoryReset(); Loading
core/res/AndroidManifest.xml +13 −1 Original line number Diff line number Diff line Loading @@ -1614,6 +1614,14 @@ <permission android:name="android.permission.NETWORK_STACK" android:protectionLevel="signature" /> <!-- @SystemApi @hide Allows an application to observe network policy changes. --> <permission android:name="android.permission.OBSERVE_NETWORK_POLICY" android:protectionLevel="signature" /> <!-- @SystemApi @hide Allows applications to register network factory or agent --> <permission android:name="android.permission.NETWORK_FACTORY" android:protectionLevel="signature" /> <!-- Allows Settings and SystemUI to call methods in Networking services <p>Not for use by third-party or privileged applications. @SystemApi Loading Loading @@ -1744,7 +1752,11 @@ <permission android:name="android.permission.NFC_TRANSACTION_EVENT" android:protectionLevel="normal" /> <!-- @SystemApi Allows an internal user to use privileged ConnectivityManager APIs. <!-- @deprecated This permission used to allow too broad access to sensitive methods and all its uses have been replaced by a more appropriate permission. Most uses have been replaced with a NETWORK_STACK or NETWORK_SETTINGS check. Please look up the documentation of the individual functions to figure out what permission now protects the individual function. @SystemApi Allows an internal user to use privileged ConnectivityManager APIs. @hide --> <permission android:name="android.permission.CONNECTIVITY_INTERNAL" android:protectionLevel="signature|privileged" /> Loading
core/res/res/values/config.xml +1 −1 Original line number Diff line number Diff line Loading @@ -508,7 +508,7 @@ --> <string translatable="false" name="config_mobile_hotspot_provision_app_no_ui"></string> <!-- Sent in response to a provisioning check. The caller must hold the permission android.permission.CONNECTIVITY_INTERNAL for Settings to permission android.permission.TETHER_PRIVILEGED for Settings to receive this response. See config_mobile_hotspot_provision_response Loading
core/tests/ConnectivityManagerTest/AndroidManifest.xml +2 −2 Original line number Diff line number Diff line Loading @@ -73,9 +73,9 @@ <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_SETTINGS" /> <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" /> <!-- This permission is added for API call setAirplaneMode() in ConnectivityManager --> <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" /> <uses-permission android:name="android.permission.TETHER_PRIVILEGED" /> <!-- This permission is added for API call setAirplaneMode() in ConnectivityManager --> <uses-permission android:name="android.permission.NETWORK_SETTINGS" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.DEVICE_POWER" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> Loading