The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 1 | /** |
| 2 | * Copyright (c) 2008, The Android Open Source Project |
| 3 | * |
Danica Chang | 9656705 | 2010-08-11 14:54:43 -0700 | [diff] [blame] | 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 | * you may not use this file except in compliance with the License. |
| 6 | * You may obtain a copy of the License at |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 7 | * |
Danica Chang | 9656705 | 2010-08-11 14:54:43 -0700 | [diff] [blame] | 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 9 | * |
Danica Chang | 9656705 | 2010-08-11 14:54:43 -0700 | [diff] [blame] | 10 | * Unless required by applicable law or agreed to in writing, software |
| 11 | * distributed under the License is distributed on an "AS IS" BASIS, |
| 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 13 | * See the License for the specific language governing permissions and |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 14 | * limitations under the License. |
| 15 | */ |
| 16 | |
| 17 | package android.net; |
| 18 | |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 19 | import android.app.PendingIntent; |
Jeff Vander Stoep | 39a51e0 | 2018-07-23 10:57:53 -0700 | [diff] [blame] | 20 | import android.net.ConnectionInfo; |
Cody Kesting | f53a075 | 2020-04-15 12:33:28 -0700 | [diff] [blame] | 21 | import android.net.ConnectivityDiagnosticsManager; |
Cody Kesting | d199a9d | 2019-12-17 12:55:28 -0800 | [diff] [blame] | 22 | import android.net.IConnectivityDiagnosticsCallback; |
Daniel Bright | f9e945b | 2020-06-15 16:10:01 -0700 | [diff] [blame] | 23 | import android.net.IQosCallback; |
| 24 | import android.net.ISocketKeepaliveCallback; |
Robert Greenwalt | 9f0ee4f | 2010-09-14 09:18:02 -0700 | [diff] [blame] | 25 | import android.net.LinkProperties; |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 26 | import android.net.Network; |
Lorenzo Colitti | ab2fed7 | 2020-01-12 22:28:37 +0900 | [diff] [blame] | 27 | import android.net.NetworkAgentConfig; |
Robert Greenwalt | e20f7a2 | 2014-04-18 15:25:25 -0700 | [diff] [blame] | 28 | import android.net.NetworkCapabilities; |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 29 | import android.net.NetworkInfo; |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 30 | import android.net.NetworkRequest; |
Jeff Sharkey | 21062e7 | 2011-05-28 20:56:34 -0700 | [diff] [blame] | 31 | import android.net.NetworkState; |
James Mattis | 47db058 | 2021-01-01 14:13:35 -0800 | [diff] [blame] | 32 | import android.net.OemNetworkPreferences; |
Jason Monk | 4d5e20f | 2014-04-25 15:00:09 -0400 | [diff] [blame] | 33 | import android.net.ProxyInfo; |
Lorenzo Colitti | 3f54f10 | 2020-12-12 00:51:11 +0900 | [diff] [blame] | 34 | import android.net.UidRange; |
Daniel Bright | f9e945b | 2020-06-15 16:10:01 -0700 | [diff] [blame] | 35 | import android.net.QosSocketInfo; |
Remi NGUYEN VAN | 94ff95b | 2019-02-04 11:32:20 +0900 | [diff] [blame] | 36 | import android.os.Bundle; |
Robert Greenwalt | 2034b91 | 2009-08-12 16:08:25 -0700 | [diff] [blame] | 37 | import android.os.IBinder; |
Chiachang Wang | 4068dcb | 2020-12-15 15:56:00 +0800 | [diff] [blame] | 38 | import android.os.INetworkActivityListener; |
Robert Greenwalt | 15a4153 | 2012-08-21 19:27:00 -0700 | [diff] [blame] | 39 | import android.os.Messenger; |
Chia-chi Yeh | 9a4ad7d | 2011-05-23 17:26:46 -0700 | [diff] [blame] | 40 | import android.os.ParcelFileDescriptor; |
Cody Kesting | f53a075 | 2020-04-15 12:33:28 -0700 | [diff] [blame] | 41 | import android.os.PersistableBundle; |
Wink Saville | 32506bc | 2013-06-29 21:10:57 -0700 | [diff] [blame] | 42 | import android.os.ResultReceiver; |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 43 | |
Remi NGUYEN VAN | 77b0c1c | 2020-12-23 12:45:08 +0900 | [diff] [blame] | 44 | import com.android.connectivity.aidl.INetworkAgent; |
Chia-chi Yeh | bded3eb | 2011-07-04 03:23:12 -0700 | [diff] [blame] | 45 | import com.android.internal.net.LegacyVpnInfo; |
Chia-chi Yeh | 75cacd5 | 2011-06-15 17:07:27 -0700 | [diff] [blame] | 46 | import com.android.internal.net.VpnConfig; |
Jeff Sharkey | 64d8b3b | 2012-08-24 11:17:25 -0700 | [diff] [blame] | 47 | import com.android.internal.net.VpnProfile; |
Chia-chi Yeh | 75cacd5 | 2011-06-15 17:07:27 -0700 | [diff] [blame] | 48 | |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 49 | /** |
| 50 | * Interface that answers queries about, and allows changing, the |
| 51 | * state of network connectivity. |
| 52 | */ |
| 53 | /** {@hide} */ |
| 54 | interface IConnectivityManager |
| 55 | { |
Paul Jensen | 1f56738 | 2015-02-13 14:18:39 -0500 | [diff] [blame] | 56 | Network getActiveNetwork(); |
Jeff Sharkey | 7dbf83d | 2016-04-28 15:33:18 -0600 | [diff] [blame] | 57 | Network getActiveNetworkForUid(int uid, boolean ignoreBlocked); |
Andrei Onea | bb27866 | 2019-02-25 13:25:32 +0000 | [diff] [blame] | 58 | @UnsupportedAppUsage |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 59 | NetworkInfo getActiveNetworkInfo(); |
Jeff Sharkey | 7dbf83d | 2016-04-28 15:33:18 -0600 | [diff] [blame] | 60 | NetworkInfo getActiveNetworkInfoForUid(int uid, boolean ignoreBlocked); |
Artur Satayev | 8124713 | 2019-11-04 15:58:52 +0000 | [diff] [blame] | 61 | @UnsupportedAppUsage(maxTargetSdk = 28) |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 62 | NetworkInfo getNetworkInfo(int networkType); |
Jeff Sharkey | 7dbf83d | 2016-04-28 15:33:18 -0600 | [diff] [blame] | 63 | NetworkInfo getNetworkInfoForUid(in Network network, int uid, boolean ignoreBlocked); |
Andrei Onea | bb27866 | 2019-02-25 13:25:32 +0000 | [diff] [blame] | 64 | @UnsupportedAppUsage |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 65 | NetworkInfo[] getAllNetworkInfo(); |
Lorenzo Colitti | 860a7aa | 2014-08-22 17:10:50 -0700 | [diff] [blame] | 66 | Network getNetworkForType(int networkType); |
Robert Greenwalt | 02fe11e | 2014-06-23 11:40:00 -0700 | [diff] [blame] | 67 | Network[] getAllNetworks(); |
Qingxi Li | b274810 | 2020-01-08 12:51:49 -0800 | [diff] [blame] | 68 | NetworkCapabilities[] getDefaultNetworkCapabilitiesForUser( |
Roshan Pius | aa24fde | 2020-12-17 14:53:09 -0800 | [diff] [blame^] | 69 | int userId, String callingPackageName, String callingAttributionTag); |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 70 | |
Robert Greenwalt | 0114f6e | 2011-08-31 11:46:42 -0700 | [diff] [blame] | 71 | boolean isNetworkSupported(int networkType); |
| 72 | |
Andrei Onea | bb27866 | 2019-02-25 13:25:32 +0000 | [diff] [blame] | 73 | @UnsupportedAppUsage |
Robert Greenwalt | 9f0ee4f | 2010-09-14 09:18:02 -0700 | [diff] [blame] | 74 | LinkProperties getActiveLinkProperties(); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 75 | LinkProperties getLinkPropertiesForType(int networkType); |
| 76 | LinkProperties getLinkProperties(in Network network); |
| 77 | |
Roshan Pius | aa24fde | 2020-12-17 14:53:09 -0800 | [diff] [blame^] | 78 | NetworkCapabilities getNetworkCapabilities(in Network network, String callingPackageName, |
| 79 | String callingAttributionTag); |
Robert Greenwalt | 9f0ee4f | 2010-09-14 09:18:02 -0700 | [diff] [blame] | 80 | |
Mathew Inwood | e1a17ba | 2020-11-04 09:29:36 +0000 | [diff] [blame] | 81 | @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) |
Jeff Sharkey | 21062e7 | 2011-05-28 20:56:34 -0700 | [diff] [blame] | 82 | NetworkState[] getAllNetworkState(); |
| 83 | |
Jeff Sharkey | d00b130 | 2012-04-12 18:34:54 -0700 | [diff] [blame] | 84 | boolean isActiveNetworkMetered(); |
Jeff Sharkey | 66fa968 | 2011-08-02 17:22:34 -0700 | [diff] [blame] | 85 | |
Philip P. Moltmann | 7bc33df | 2020-03-26 11:50:35 -0700 | [diff] [blame] | 86 | boolean requestRouteToHostAddress(int networkType, in byte[] hostAddress, |
| 87 | String callingPackageName, String callingAttributionTag); |
Robert Greenwalt | 7fe44cb | 2010-08-27 09:24:29 -0700 | [diff] [blame] | 88 | |
markchien | 5776f96 | 2019-12-16 20:15:20 +0800 | [diff] [blame] | 89 | @UnsupportedAppUsage(maxTargetSdk = 29, |
| 90 | publicAlternatives = "Use {@code TetheringManager#getLastTetherError} as alternative") |
Robert Greenwalt | 4283ded | 2010-03-02 17:25:02 -0800 | [diff] [blame] | 91 | int getLastTetherError(String iface); |
Robert Greenwalt | 0c4828c | 2010-01-26 11:40:34 -0800 | [diff] [blame] | 92 | |
markchien | 5776f96 | 2019-12-16 20:15:20 +0800 | [diff] [blame] | 93 | @UnsupportedAppUsage(maxTargetSdk = 29, |
| 94 | publicAlternatives = "Use {@code TetheringManager#getTetherableIfaces} as alternative") |
Robert Greenwalt | 0c4828c | 2010-01-26 11:40:34 -0800 | [diff] [blame] | 95 | String[] getTetherableIfaces(); |
| 96 | |
markchien | 5776f96 | 2019-12-16 20:15:20 +0800 | [diff] [blame] | 97 | @UnsupportedAppUsage(maxTargetSdk = 29, |
| 98 | publicAlternatives = "Use {@code TetheringManager#getTetheredIfaces} as alternative") |
Robert Greenwalt | 0c4828c | 2010-01-26 11:40:34 -0800 | [diff] [blame] | 99 | String[] getTetheredIfaces(); |
Robert Greenwalt | 8e87f12 | 2010-02-11 18:18:40 -0800 | [diff] [blame] | 100 | |
markchien | 5776f96 | 2019-12-16 20:15:20 +0800 | [diff] [blame] | 101 | @UnsupportedAppUsage(maxTargetSdk = 29, |
| 102 | publicAlternatives = "Use {@code TetheringManager#getTetheringErroredIfaces} " |
| 103 | + "as Alternative") |
Robert Greenwalt | 4283ded | 2010-03-02 17:25:02 -0800 | [diff] [blame] | 104 | String[] getTetheringErroredIfaces(); |
| 105 | |
markchien | 5776f96 | 2019-12-16 20:15:20 +0800 | [diff] [blame] | 106 | @UnsupportedAppUsage(maxTargetSdk = 29, |
| 107 | publicAlternatives = "Use {@code TetheringManager#getTetherableUsbRegexs} as alternative") |
Robert Greenwalt | 8e87f12 | 2010-02-11 18:18:40 -0800 | [diff] [blame] | 108 | String[] getTetherableUsbRegexs(); |
| 109 | |
markchien | 5776f96 | 2019-12-16 20:15:20 +0800 | [diff] [blame] | 110 | @UnsupportedAppUsage(maxTargetSdk = 29, |
| 111 | publicAlternatives = "Use {@code TetheringManager#getTetherableWifiRegexs} as alternative") |
Robert Greenwalt | 8e87f12 | 2010-02-11 18:18:40 -0800 | [diff] [blame] | 112 | String[] getTetherableWifiRegexs(); |
Robert Greenwalt | 93dc104 | 2010-06-15 12:19:37 -0700 | [diff] [blame] | 113 | |
Artur Satayev | 8124713 | 2019-11-04 15:58:52 +0000 | [diff] [blame] | 114 | @UnsupportedAppUsage(maxTargetSdk = 28) |
Robert Greenwalt | 986c741 | 2010-09-08 15:24:47 -0700 | [diff] [blame] | 115 | void reportInetCondition(int networkType, int percentage); |
Robert Greenwalt | c3c5f86 | 2010-10-11 16:00:27 -0700 | [diff] [blame] | 116 | |
Paul Jensen | b95d795 | 2015-04-07 12:43:13 -0400 | [diff] [blame] | 117 | void reportNetworkConnectivity(in Network network, boolean hasConnectivity); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 118 | |
Jason Monk | 4d5e20f | 2014-04-25 15:00:09 -0400 | [diff] [blame] | 119 | ProxyInfo getGlobalProxy(); |
Robert Greenwalt | c3c5f86 | 2010-10-11 16:00:27 -0700 | [diff] [blame] | 120 | |
Jason Monk | 4d5e20f | 2014-04-25 15:00:09 -0400 | [diff] [blame] | 121 | void setGlobalProxy(in ProxyInfo p); |
Robert Greenwalt | c3c5f86 | 2010-10-11 16:00:27 -0700 | [diff] [blame] | 122 | |
Paul Jensen | db93dd9 | 2015-05-06 07:32:40 -0400 | [diff] [blame] | 123 | ProxyInfo getProxyForNetwork(in Network nework); |
Robert Greenwalt | 34848c0 | 2011-03-25 13:09:25 -0700 | [diff] [blame] | 124 | |
Robin Lee | 1e71fc8 | 2015-05-12 18:14:58 +0100 | [diff] [blame] | 125 | boolean prepareVpn(String oldPackage, String newPackage, int userId); |
Chia-chi Yeh | 9a4ad7d | 2011-05-23 17:26:46 -0700 | [diff] [blame] | 126 | |
Benedict Wong | a731991 | 2019-11-06 00:20:15 -0800 | [diff] [blame] | 127 | void setVpnPackageAuthorization(String packageName, int userId, int vpnType); |
Jeff Davidson | 6047c1d | 2014-08-11 14:07:27 -0700 | [diff] [blame] | 128 | |
Chia-chi Yeh | 75cacd5 | 2011-06-15 17:07:27 -0700 | [diff] [blame] | 129 | ParcelFileDescriptor establishVpn(in VpnConfig config); |
Chia-chi Yeh | 7e026b3 | 2011-07-02 17:15:00 -0700 | [diff] [blame] | 130 | |
Benedict Wong | df936cf | 2019-11-05 12:56:25 -0800 | [diff] [blame] | 131 | boolean provisionVpnProfile(in VpnProfile profile, String packageName); |
| 132 | |
| 133 | void deleteVpnProfile(String packageName); |
| 134 | |
| 135 | void startVpnProfile(String packageName); |
| 136 | |
| 137 | void stopVpnProfile(String packageName); |
| 138 | |
Robin Lee | 1e71fc8 | 2015-05-12 18:14:58 +0100 | [diff] [blame] | 139 | VpnConfig getVpnConfig(int userId); |
Chad Brubaker | 94f3c8c | 2013-07-16 18:59:12 -0700 | [diff] [blame] | 140 | |
Mathew Inwood | e1a17ba | 2020-11-04 09:29:36 +0000 | [diff] [blame] | 141 | @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) |
Jeff Sharkey | 64d8b3b | 2012-08-24 11:17:25 -0700 | [diff] [blame] | 142 | void startLegacyVpn(in VpnProfile profile); |
Chia-chi Yeh | bded3eb | 2011-07-04 03:23:12 -0700 | [diff] [blame] | 143 | |
Robin Lee | 35ca2e7 | 2015-07-07 12:28:13 -0700 | [diff] [blame] | 144 | LegacyVpnInfo getLegacyVpnInfo(int userId); |
Jeff Sharkey | ebcc797 | 2012-08-25 00:05:46 -0700 | [diff] [blame] | 145 | |
| 146 | boolean updateLockdownVpn(); |
Charles He | 9369e61 | 2017-05-15 17:07:18 +0100 | [diff] [blame] | 147 | boolean isAlwaysOnVpnPackageSupported(int userId, String packageName); |
Pavel Grafov | 3aeb3f3 | 2019-01-25 08:50:06 +0000 | [diff] [blame] | 148 | boolean setAlwaysOnVpnPackage(int userId, String packageName, boolean lockdown, |
| 149 | in List<String> lockdownWhitelist); |
Robin Lee | e5d5ed5 | 2016-01-05 18:03:46 +0000 | [diff] [blame] | 150 | String getAlwaysOnVpnPackage(int userId); |
Pavel Grafov | 3aeb3f3 | 2019-01-25 08:50:06 +0000 | [diff] [blame] | 151 | boolean isVpnLockdownEnabled(int userId); |
| 152 | List<String> getVpnLockdownWhitelist(int userId); |
Lorenzo Colitti | 3f54f10 | 2020-12-12 00:51:11 +0900 | [diff] [blame] | 153 | void setRequireVpnForUids(boolean requireVpn, in UidRange[] ranges); |
Irfan Sheriff | 0ad0d13 | 2012-08-16 12:49:23 -0700 | [diff] [blame] | 154 | |
Paul Jensen | ebeaecd | 2014-09-15 15:59:36 -0400 | [diff] [blame] | 155 | void setProvisioningNotificationVisible(boolean visible, int networkType, in String action); |
Yuhao Zheng | b77f15d | 2013-09-09 17:00:04 -0700 | [diff] [blame] | 156 | |
| 157 | void setAirplaneMode(boolean enable); |
Robert Greenwalt | 7e45d11 | 2014-04-11 15:53:27 -0700 | [diff] [blame] | 158 | |
fenglu | b00f488 | 2015-04-21 17:12:05 -0700 | [diff] [blame] | 159 | boolean requestBandwidthUpdate(in Network network); |
fenglu | 3f35740 | 2015-03-20 11:29:56 -0700 | [diff] [blame] | 160 | |
Lorenzo Colitti | 6702d4b | 2020-01-08 00:04:09 +0900 | [diff] [blame] | 161 | int registerNetworkProvider(in Messenger messenger, in String name); |
| 162 | void unregisterNetworkProvider(in Messenger messenger); |
| 163 | |
| 164 | void declareNetworkRequestUnfulfillable(in NetworkRequest request); |
| 165 | |
Remi NGUYEN VAN | 77b0c1c | 2020-12-23 12:45:08 +0900 | [diff] [blame] | 166 | Network registerNetworkAgent(in INetworkAgent na, in NetworkInfo ni, in LinkProperties lp, |
Lorenzo Colitti | ab2fed7 | 2020-01-12 22:28:37 +0900 | [diff] [blame] | 167 | in NetworkCapabilities nc, int score, in NetworkAgentConfig config, |
| 168 | in int factorySerialNumber); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 169 | |
junyulai | ad01079 | 2021-01-11 16:53:38 +0800 | [diff] [blame] | 170 | NetworkRequest requestNetwork(in NetworkCapabilities networkCapabilities, int reqType, |
Roshan Pius | 08c94fb | 2020-01-16 12:17:17 -0800 | [diff] [blame] | 171 | in Messenger messenger, int timeoutSec, in IBinder binder, int legacy, |
Philip P. Moltmann | 7bc33df | 2020-03-26 11:50:35 -0700 | [diff] [blame] | 172 | String callingPackageName, String callingAttributionTag); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 173 | |
| 174 | NetworkRequest pendingRequestForNetwork(in NetworkCapabilities networkCapabilities, |
Philip P. Moltmann | 7bc33df | 2020-03-26 11:50:35 -0700 | [diff] [blame] | 175 | in PendingIntent operation, String callingPackageName, String callingAttributionTag); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 176 | |
Jeremy Joslin | 60d379b | 2014-11-05 10:32:09 -0800 | [diff] [blame] | 177 | void releasePendingNetworkRequest(in PendingIntent operation); |
| 178 | |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 179 | NetworkRequest listenForNetwork(in NetworkCapabilities networkCapabilities, |
Roshan Pius | aa24fde | 2020-12-17 14:53:09 -0800 | [diff] [blame^] | 180 | in Messenger messenger, in IBinder binder, String callingPackageName, |
| 181 | String callingAttributionTag); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 182 | |
| 183 | void pendingListenForNetwork(in NetworkCapabilities networkCapabilities, |
Roshan Pius | aa24fde | 2020-12-17 14:53:09 -0800 | [diff] [blame^] | 184 | in PendingIntent operation, String callingPackageName, |
| 185 | String callingAttributionTag); |
Robert Greenwalt | f99b839 | 2014-03-26 16:47:06 -0700 | [diff] [blame] | 186 | |
| 187 | void releaseNetworkRequest(in NetworkRequest networkRequest); |
Robert Greenwalt | 25ef738 | 2014-05-15 18:07:26 -0700 | [diff] [blame] | 188 | |
Lorenzo Colitti | 6947c06 | 2015-04-03 16:38:52 +0900 | [diff] [blame] | 189 | void setAcceptUnvalidated(in Network network, boolean accept, boolean always); |
lucaslin | 2240ef6 | 2019-03-12 13:08:03 +0800 | [diff] [blame] | 190 | void setAcceptPartialConnectivity(in Network network, boolean accept, boolean always); |
Lorenzo Colitti | c65750c | 2016-09-19 01:00:19 +0900 | [diff] [blame] | 191 | void setAvoidUnvalidated(in Network network); |
Lorenzo Colitti | 500dbae | 2017-04-27 14:30:21 +0900 | [diff] [blame] | 192 | void startCaptivePortalApp(in Network network); |
Remi NGUYEN VAN | ad9f6d8 | 2019-02-13 20:58:59 +0900 | [diff] [blame] | 193 | void startCaptivePortalAppInternal(in Network network, in Bundle appExtras); |
Lorenzo Colitti | 6947c06 | 2015-04-03 16:38:52 +0900 | [diff] [blame] | 194 | |
Remi NGUYEN VAN | d6d5505 | 2019-03-22 17:16:52 +0900 | [diff] [blame] | 195 | boolean shouldAvoidBadWifi(); |
Lorenzo Colitti | e454b43 | 2017-01-24 18:08:41 +0900 | [diff] [blame] | 196 | int getMultipathPreference(in Network Network); |
| 197 | |
Remi NGUYEN VAN | 8539129 | 2018-12-27 16:43:56 +0900 | [diff] [blame] | 198 | NetworkRequest getDefaultRequest(); |
| 199 | |
Robert Greenwalt | 25ef738 | 2014-05-15 18:07:26 -0700 | [diff] [blame] | 200 | int getRestoreDefaultNetworkDelay(int networkType); |
Sreeram Ramachandran | e458632 | 2014-07-27 14:18:26 -0700 | [diff] [blame] | 201 | |
| 202 | boolean addVpnAddress(String address, int prefixLength); |
| 203 | boolean removeVpnAddress(String address, int prefixLength); |
Sreeram Ramachandran | d2b4fe2 | 2014-11-11 16:09:21 -0800 | [diff] [blame] | 204 | boolean setUnderlyingNetworksForVpn(in Network[] networks); |
Stuart Scott | d546364 | 2015-04-02 18:00:02 -0700 | [diff] [blame] | 205 | |
| 206 | void factoryReset(); |
Lorenzo Colitti | 0b798a8 | 2015-06-15 14:29:22 +0900 | [diff] [blame] | 207 | |
junyulai | 070f9ff | 2019-01-16 20:23:34 +0800 | [diff] [blame] | 208 | void startNattKeepalive(in Network network, int intervalSeconds, |
| 209 | in ISocketKeepaliveCallback cb, String srcAddr, int srcPort, String dstAddr); |
Lorenzo Colitti | 0b798a8 | 2015-06-15 14:29:22 +0900 | [diff] [blame] | 210 | |
Chiachang Wang | 04a34b6 | 2021-01-19 15:35:03 +0800 | [diff] [blame] | 211 | void startNattKeepaliveWithFd(in Network network, in ParcelFileDescriptor pfd, int resourceId, |
junyulai | 070f9ff | 2019-01-16 20:23:34 +0800 | [diff] [blame] | 212 | int intervalSeconds, in ISocketKeepaliveCallback cb, String srcAddr, |
junyulai | d05a192 | 2019-01-15 11:32:44 +0800 | [diff] [blame] | 213 | String dstAddr); |
| 214 | |
Chiachang Wang | 04a34b6 | 2021-01-19 15:35:03 +0800 | [diff] [blame] | 215 | void startTcpKeepalive(in Network network, in ParcelFileDescriptor pfd, int intervalSeconds, |
junyulai | 070f9ff | 2019-01-16 20:23:34 +0800 | [diff] [blame] | 216 | in ISocketKeepaliveCallback cb); |
junyulai | 0835a1e | 2019-01-08 20:04:33 +0800 | [diff] [blame] | 217 | |
Lorenzo Colitti | 0b798a8 | 2015-06-15 14:29:22 +0900 | [diff] [blame] | 218 | void stopKeepalive(in Network network, int slot); |
Udam Saini | cd64546 | 2016-01-04 12:16:14 -0800 | [diff] [blame] | 219 | |
| 220 | String getCaptivePortalServerUrl(); |
Ricky Wai | 7097cc9 | 2018-01-23 04:09:45 +0000 | [diff] [blame] | 221 | |
| 222 | byte[] getNetworkWatchlistConfigHash(); |
Jeff Vander Stoep | 39a51e0 | 2018-07-23 10:57:53 -0700 | [diff] [blame] | 223 | |
| 224 | int getConnectionOwnerUid(in ConnectionInfo connectionInfo); |
Pavel Grafov | e87b7ce | 2018-12-14 13:51:07 +0000 | [diff] [blame] | 225 | boolean isCallerCurrentAlwaysOnVpnApp(); |
| 226 | boolean isCallerCurrentAlwaysOnVpnLockdownApp(); |
markchien | 0f45bb9 | 2019-01-16 17:44:13 +0800 | [diff] [blame] | 227 | |
Cody Kesting | d199a9d | 2019-12-17 12:55:28 -0800 | [diff] [blame] | 228 | void registerConnectivityDiagnosticsCallback(in IConnectivityDiagnosticsCallback callback, |
Cody Kesting | 83bb5fa | 2020-01-05 14:06:39 -0800 | [diff] [blame] | 229 | in NetworkRequest request, String callingPackageName); |
Cody Kesting | d199a9d | 2019-12-17 12:55:28 -0800 | [diff] [blame] | 230 | void unregisterConnectivityDiagnosticsCallback(in IConnectivityDiagnosticsCallback callback); |
| 231 | |
Benedict Wong | b36a811 | 2018-11-09 14:45:34 -0800 | [diff] [blame] | 232 | IBinder startOrGetTestNetworkService(); |
Cody Kesting | f53a075 | 2020-04-15 12:33:28 -0700 | [diff] [blame] | 233 | |
| 234 | void simulateDataStall(int detectionMethod, long timestampMillis, in Network network, |
| 235 | in PersistableBundle extras); |
Aaron Huang | 9601189 | 2020-06-27 07:18:23 +0800 | [diff] [blame] | 236 | |
| 237 | void systemReady(); |
Chiachang Wang | 4068dcb | 2020-12-15 15:56:00 +0800 | [diff] [blame] | 238 | |
| 239 | void registerNetworkActivityListener(in INetworkActivityListener l); |
| 240 | |
| 241 | void unregisterNetworkActivityListener(in INetworkActivityListener l); |
| 242 | |
| 243 | boolean isDefaultNetworkActive(); |
Daniel Bright | f9e945b | 2020-06-15 16:10:01 -0700 | [diff] [blame] | 244 | |
| 245 | void registerQosSocketCallback(in QosSocketInfo socketInfo, in IQosCallback callback); |
| 246 | void unregisterQosCallback(in IQosCallback callback); |
James Mattis | 47db058 | 2021-01-01 14:13:35 -0800 | [diff] [blame] | 247 | |
| 248 | void setOemNetworkPreference(in OemNetworkPreferences preference); |
The Android Open Source Project | 28527d2 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 249 | } |