paulhu | 667e8fb | 2021-12-14 01:30:22 +0000 | [diff] [blame] | 1 | // Signature format: 2.0 |
Junyu Lai | 2ef865e | 2022-01-17 11:52:57 +0000 | [diff] [blame] | 2 | package android.app.usage { |
| 3 | |
| 4 | public class NetworkStatsManager { |
junyulai | b59e542 | 2022-03-01 17:08:01 +0800 | [diff] [blame] | 5 | method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STATS_PROVIDER, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void registerNetworkStatsProvider(@NonNull String, @NonNull android.net.netstats.provider.NetworkStatsProvider); |
| 6 | method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STATS_PROVIDER, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void unregisterNetworkStatsProvider(@NonNull android.net.netstats.provider.NetworkStatsProvider); |
Junyu Lai | 2ef865e | 2022-01-17 11:52:57 +0000 | [diff] [blame] | 7 | } |
| 8 | |
| 9 | } |
| 10 | |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 11 | package android.nearby { |
| 12 | |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 13 | public interface BroadcastCallback { |
Wei Wang | 88c4844 | 2022-03-05 12:14:12 -0800 | [diff] [blame] | 14 | method public void onStatusChanged(int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 15 | field public static final int STATUS_FAILURE = 1; // 0x1 |
| 16 | field public static final int STATUS_FAILURE_ALREADY_REGISTERED = 2; // 0x2 |
| 17 | field public static final int STATUS_FAILURE_MISSING_PERMISSIONS = 4; // 0x4 |
| 18 | field public static final int STATUS_FAILURE_SIZE_EXCEED_LIMIT = 3; // 0x3 |
| 19 | field public static final int STATUS_OK = 0; // 0x0 |
| 20 | } |
| 21 | |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 22 | public abstract class BroadcastRequest { |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 23 | method @NonNull public java.util.List<java.lang.Integer> getMediums(); |
| 24 | method @IntRange(from=0xffffff81, to=126) public int getTxPower(); |
| 25 | method public int getType(); |
| 26 | method public int getVersion(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 27 | field public static final int BROADCAST_TYPE_NEARBY_PRESENCE = 3; // 0x3 |
Wei Wang | 88c4844 | 2022-03-05 12:14:12 -0800 | [diff] [blame] | 28 | field public static final int BROADCAST_TYPE_UNKNOWN = -1; // 0xffffffff |
Wei Wang | f5bb26f | 2022-03-25 10:30:06 -0700 | [diff] [blame] | 29 | field public static final int MEDIUM_BLE = 1; // 0x1 |
Wei Wang | 88c4844 | 2022-03-05 12:14:12 -0800 | [diff] [blame] | 30 | field public static final int PRESENCE_VERSION_UNKNOWN = -1; // 0xffffffff |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 31 | field public static final int PRESENCE_VERSION_V0 = 0; // 0x0 |
| 32 | field public static final int PRESENCE_VERSION_V1 = 1; // 0x1 |
Wei Wang | 88c4844 | 2022-03-05 12:14:12 -0800 | [diff] [blame] | 33 | field public static final int UNKNOWN_TX_POWER = -127; // 0xffffff81 |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 34 | } |
| 35 | |
| 36 | public final class CredentialElement implements android.os.Parcelable { |
| 37 | ctor public CredentialElement(@NonNull String, @NonNull byte[]); |
| 38 | method public int describeContents(); |
| 39 | method @NonNull public String getKey(); |
| 40 | method @NonNull public byte[] getValue(); |
| 41 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 42 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.CredentialElement> CREATOR; |
| 43 | } |
| 44 | |
| 45 | public final class DataElement implements android.os.Parcelable { |
| 46 | ctor public DataElement(int, @NonNull byte[]); |
| 47 | method public int describeContents(); |
| 48 | method public int getKey(); |
| 49 | method @NonNull public byte[] getValue(); |
| 50 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 51 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.DataElement> CREATOR; |
| 52 | } |
| 53 | |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 54 | public abstract class NearbyDevice { |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 55 | method @NonNull public java.util.List<java.lang.Integer> getMediums(); |
| 56 | method @Nullable public String getName(); |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 57 | method @IntRange(from=0xffffff81, to=126) public int getRssi(); |
| 58 | method public static boolean isValidMedium(int); |
| 59 | } |
| 60 | |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 61 | public class NearbyManager { |
Xinyi Zhou | b4efda8 | 2022-03-15 18:22:35 -0700 | [diff] [blame] | 62 | method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public void startBroadcast(@NonNull android.nearby.BroadcastRequest, @NonNull java.util.concurrent.Executor, @NonNull android.nearby.BroadcastCallback); |
| 63 | method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public int startScan(@NonNull android.nearby.ScanRequest, @NonNull java.util.concurrent.Executor, @NonNull android.nearby.ScanCallback); |
| 64 | method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public void stopBroadcast(@NonNull android.nearby.BroadcastCallback); |
| 65 | method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public void stopScan(@NonNull android.nearby.ScanCallback); |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 66 | } |
| 67 | |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 68 | public final class PresenceBroadcastRequest extends android.nearby.BroadcastRequest implements android.os.Parcelable { |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 69 | method public int describeContents(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 70 | method @NonNull public java.util.List<java.lang.Integer> getActions(); |
| 71 | method @NonNull public android.nearby.PrivateCredential getCredential(); |
| 72 | method @NonNull public java.util.List<android.nearby.DataElement> getExtendedProperties(); |
| 73 | method @NonNull public byte[] getSalt(); |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 74 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 75 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PresenceBroadcastRequest> CREATOR; |
| 76 | } |
| 77 | |
| 78 | public static final class PresenceBroadcastRequest.Builder { |
Wei Wang | 88c4844 | 2022-03-05 12:14:12 -0800 | [diff] [blame] | 79 | ctor public PresenceBroadcastRequest.Builder(@NonNull java.util.List<java.lang.Integer>, @NonNull byte[], @NonNull android.nearby.PrivateCredential); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 80 | method @NonNull public android.nearby.PresenceBroadcastRequest.Builder addAction(@IntRange(from=1, to=255) int); |
| 81 | method @NonNull public android.nearby.PresenceBroadcastRequest.Builder addExtendedProperty(@NonNull android.nearby.DataElement); |
| 82 | method @NonNull public android.nearby.PresenceBroadcastRequest build(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 83 | method @NonNull public android.nearby.PresenceBroadcastRequest.Builder setTxPower(@IntRange(from=0xffffff81, to=126) int); |
| 84 | method @NonNull public android.nearby.PresenceBroadcastRequest.Builder setVersion(int); |
| 85 | } |
| 86 | |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 87 | public abstract class PresenceCredential { |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 88 | method @NonNull public byte[] getAuthenticityKey(); |
| 89 | method @NonNull public java.util.List<android.nearby.CredentialElement> getCredentialElements(); |
| 90 | method public int getIdentityType(); |
| 91 | method @NonNull public byte[] getSecretId(); |
| 92 | method public int getType(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 93 | field public static final int CREDENTIAL_TYPE_PRIVATE = 0; // 0x0 |
| 94 | field public static final int CREDENTIAL_TYPE_PUBLIC = 1; // 0x1 |
| 95 | field public static final int IDENTITY_TYPE_PRIVATE = 1; // 0x1 |
| 96 | field public static final int IDENTITY_TYPE_PROVISIONED = 2; // 0x2 |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 97 | field public static final int IDENTITY_TYPE_TRUSTED = 3; // 0x3 |
| 98 | field public static final int IDENTITY_TYPE_UNKNOWN = 0; // 0x0 |
| 99 | } |
| 100 | |
| 101 | public final class PresenceDevice extends android.nearby.NearbyDevice implements android.os.Parcelable { |
| 102 | method public int describeContents(); |
| 103 | method @NonNull public String getDeviceId(); |
| 104 | method @Nullable public String getDeviceImageUrl(); |
| 105 | method public int getDeviceType(); |
| 106 | method public long getDiscoveryTimestampMillis(); |
| 107 | method @NonNull public byte[] getEncryptedIdentity(); |
| 108 | method @NonNull public java.util.List<android.nearby.DataElement> getExtendedProperties(); |
| 109 | method @NonNull public byte[] getSalt(); |
| 110 | method @NonNull public byte[] getSecretId(); |
| 111 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 112 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PresenceDevice> CREATOR; |
| 113 | } |
| 114 | |
| 115 | public static final class PresenceDevice.Builder { |
Wei Wang | 88c4844 | 2022-03-05 12:14:12 -0800 | [diff] [blame] | 116 | ctor public PresenceDevice.Builder(@NonNull String, @NonNull byte[], @NonNull byte[], @NonNull byte[]); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 117 | method @NonNull public android.nearby.PresenceDevice.Builder addExtendedProperty(@NonNull android.nearby.DataElement); |
| 118 | method @NonNull public android.nearby.PresenceDevice.Builder addMedium(int); |
| 119 | method @NonNull public android.nearby.PresenceDevice build(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 120 | method @NonNull public android.nearby.PresenceDevice.Builder setDeviceImageUrl(@Nullable String); |
| 121 | method @NonNull public android.nearby.PresenceDevice.Builder setDeviceType(int); |
| 122 | method @NonNull public android.nearby.PresenceDevice.Builder setDiscoveryTimestampMillis(long); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 123 | method @NonNull public android.nearby.PresenceDevice.Builder setName(@Nullable String); |
| 124 | method @NonNull public android.nearby.PresenceDevice.Builder setRssi(int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 125 | } |
| 126 | |
| 127 | public final class PresenceScanFilter extends android.nearby.ScanFilter implements android.os.Parcelable { |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 128 | method public int describeContents(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 129 | method @NonNull public java.util.List<android.nearby.PublicCredential> getCredentials(); |
| 130 | method @NonNull public java.util.List<android.nearby.DataElement> getExtendedProperties(); |
| 131 | method @NonNull public java.util.List<java.lang.Integer> getPresenceActions(); |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 132 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 133 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PresenceScanFilter> CREATOR; |
| 134 | } |
| 135 | |
| 136 | public static final class PresenceScanFilter.Builder { |
| 137 | ctor public PresenceScanFilter.Builder(); |
| 138 | method @NonNull public android.nearby.PresenceScanFilter.Builder addCredential(@NonNull android.nearby.PublicCredential); |
| 139 | method @NonNull public android.nearby.PresenceScanFilter.Builder addExtendedProperty(@NonNull android.nearby.DataElement); |
| 140 | method @NonNull public android.nearby.PresenceScanFilter.Builder addPresenceAction(@IntRange(from=1, to=255) int); |
| 141 | method @NonNull public android.nearby.PresenceScanFilter build(); |
| 142 | method @NonNull public android.nearby.PresenceScanFilter.Builder setMaxPathLoss(@IntRange(from=0, to=127) int); |
| 143 | } |
| 144 | |
| 145 | public final class PrivateCredential extends android.nearby.PresenceCredential implements android.os.Parcelable { |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 146 | method public int describeContents(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 147 | method @NonNull public String getDeviceName(); |
| 148 | method @NonNull public byte[] getMetadataEncryptionKey(); |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 149 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 150 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PrivateCredential> CREATOR; |
| 151 | } |
| 152 | |
| 153 | public static final class PrivateCredential.Builder { |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 154 | ctor public PrivateCredential.Builder(@NonNull byte[], @NonNull byte[], @NonNull byte[], @NonNull String); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 155 | method @NonNull public android.nearby.PrivateCredential.Builder addCredentialElement(@NonNull android.nearby.CredentialElement); |
| 156 | method @NonNull public android.nearby.PrivateCredential build(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 157 | method @NonNull public android.nearby.PrivateCredential.Builder setIdentityType(int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 158 | } |
| 159 | |
| 160 | public final class PublicCredential extends android.nearby.PresenceCredential implements android.os.Parcelable { |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 161 | method public int describeContents(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 162 | method @NonNull public byte[] getEncryptedMetadata(); |
| 163 | method @NonNull public byte[] getEncryptedMetadataKeyTag(); |
| 164 | method @NonNull public byte[] getPublicKey(); |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 165 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 166 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PublicCredential> CREATOR; |
| 167 | } |
| 168 | |
| 169 | public static final class PublicCredential.Builder { |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 170 | ctor public PublicCredential.Builder(@NonNull byte[], @NonNull byte[], @NonNull byte[], @NonNull byte[], @NonNull byte[]); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 171 | method @NonNull public android.nearby.PublicCredential.Builder addCredentialElement(@NonNull android.nearby.CredentialElement); |
| 172 | method @NonNull public android.nearby.PublicCredential build(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 173 | method @NonNull public android.nearby.PublicCredential.Builder setIdentityType(int); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 174 | } |
| 175 | |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 176 | public interface ScanCallback { |
| 177 | method public void onDiscovered(@NonNull android.nearby.NearbyDevice); |
| 178 | method public void onLost(@NonNull android.nearby.NearbyDevice); |
| 179 | method public void onUpdated(@NonNull android.nearby.NearbyDevice); |
| 180 | } |
| 181 | |
Wei Wang | 24e2cb2 | 2022-03-12 12:15:34 -0800 | [diff] [blame] | 182 | public abstract class ScanFilter { |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 183 | method @IntRange(from=0, to=127) public int getMaxPathLoss(); |
| 184 | method public int getType(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 185 | } |
| 186 | |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 187 | public final class ScanRequest implements android.os.Parcelable { |
| 188 | method public int describeContents(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 189 | method @NonNull public java.util.List<android.nearby.ScanFilter> getScanFilters(); |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 190 | method public int getScanMode(); |
| 191 | method public int getScanType(); |
| 192 | method @NonNull public android.os.WorkSource getWorkSource(); |
Xinyi Zhou | ff98750 | 2022-03-09 17:38:41 -0800 | [diff] [blame] | 193 | method public boolean isBleEnabled(); |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 194 | method public static boolean isValidScanMode(int); |
| 195 | method public static boolean isValidScanType(int); |
| 196 | method @NonNull public static String scanModeToString(int); |
| 197 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 198 | field @NonNull public static final android.os.Parcelable.Creator<android.nearby.ScanRequest> CREATOR; |
| 199 | field public static final int SCAN_MODE_BALANCED = 1; // 0x1 |
| 200 | field public static final int SCAN_MODE_LOW_LATENCY = 2; // 0x2 |
| 201 | field public static final int SCAN_MODE_LOW_POWER = 0; // 0x0 |
| 202 | field public static final int SCAN_MODE_NO_POWER = -1; // 0xffffffff |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 203 | field public static final int SCAN_TYPE_FAST_PAIR = 1; // 0x1 |
Chun Zhang | e4440de | 2022-03-24 22:40:56 -0700 | [diff] [blame] | 204 | field public static final int SCAN_TYPE_NEARBY_PRESENCE = 2; // 0x2 |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 205 | } |
| 206 | |
| 207 | public static final class ScanRequest.Builder { |
| 208 | ctor public ScanRequest.Builder(); |
Wei Wang | b15b5a8 | 2022-02-01 17:08:08 -0800 | [diff] [blame] | 209 | method @NonNull public android.nearby.ScanRequest.Builder addScanFilter(@NonNull android.nearby.ScanFilter); |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 210 | method @NonNull public android.nearby.ScanRequest build(); |
Xinyi Zhou | ff98750 | 2022-03-09 17:38:41 -0800 | [diff] [blame] | 211 | method @NonNull public android.nearby.ScanRequest.Builder setBleEnabled(boolean); |
Remi NGUYEN VAN | 51935fc | 2022-01-07 13:18:54 +0900 | [diff] [blame] | 212 | method @NonNull public android.nearby.ScanRequest.Builder setScanMode(int); |
| 213 | method @NonNull public android.nearby.ScanRequest.Builder setScanType(int); |
| 214 | method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.nearby.ScanRequest.Builder setWorkSource(@Nullable android.os.WorkSource); |
| 215 | } |
| 216 | |
| 217 | } |
| 218 | |
Aaron Huang | 68ca373 | 2022-01-06 19:30:43 +0800 | [diff] [blame] | 219 | package android.net { |
| 220 | |
Xiao Ma | eaaf7d3 | 2022-01-23 16:14:51 +0000 | [diff] [blame] | 221 | public class EthernetManager { |
Patrick Rohr | fa376a5 | 2022-03-16 20:16:09 +0100 | [diff] [blame] | 222 | method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.MANAGE_ETHERNET_NETWORKS}) public void disableInterface(@NonNull String, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.String,android.net.EthernetNetworkManagementException>); |
| 223 | method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.MANAGE_ETHERNET_NETWORKS}) public void enableInterface(@NonNull String, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.String,android.net.EthernetNetworkManagementException>); |
Xiao Ma | eaaf7d3 | 2022-01-23 16:14:51 +0000 | [diff] [blame] | 224 | method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public android.net.EthernetManager.TetheredInterfaceRequest requestTetheredInterface(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.TetheredInterfaceCallback); |
Patrick Rohr | c551ebb | 2022-03-16 20:15:18 +0100 | [diff] [blame] | 225 | method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.MANAGE_ETHERNET_NETWORKS}) public void updateConfiguration(@NonNull String, @NonNull android.net.EthernetNetworkUpdateRequest, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.String,android.net.EthernetNetworkManagementException>); |
Xiao Ma | eaaf7d3 | 2022-01-23 16:14:51 +0000 | [diff] [blame] | 226 | } |
| 227 | |
| 228 | public static interface EthernetManager.TetheredInterfaceCallback { |
| 229 | method public void onAvailable(@NonNull String); |
| 230 | method public void onUnavailable(); |
| 231 | } |
| 232 | |
| 233 | public static class EthernetManager.TetheredInterfaceRequest { |
| 234 | method public void release(); |
| 235 | } |
| 236 | |
| 237 | public final class EthernetNetworkManagementException extends java.lang.RuntimeException implements android.os.Parcelable { |
| 238 | ctor public EthernetNetworkManagementException(@NonNull String); |
| 239 | method public int describeContents(); |
| 240 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 241 | field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkManagementException> CREATOR; |
| 242 | } |
| 243 | |
| 244 | public final class EthernetNetworkUpdateRequest implements android.os.Parcelable { |
| 245 | method public int describeContents(); |
Patrick Rohr | 8a910f4 | 2022-03-16 20:07:23 +0100 | [diff] [blame] | 246 | method @Nullable public android.net.IpConfiguration getIpConfiguration(); |
Xiao Ma | eaaf7d3 | 2022-01-23 16:14:51 +0000 | [diff] [blame] | 247 | method @Nullable public android.net.NetworkCapabilities getNetworkCapabilities(); |
| 248 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 249 | field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkUpdateRequest> CREATOR; |
| 250 | } |
| 251 | |
| 252 | public static final class EthernetNetworkUpdateRequest.Builder { |
| 253 | ctor public EthernetNetworkUpdateRequest.Builder(); |
| 254 | ctor public EthernetNetworkUpdateRequest.Builder(@NonNull android.net.EthernetNetworkUpdateRequest); |
| 255 | method @NonNull public android.net.EthernetNetworkUpdateRequest build(); |
Patrick Rohr | 8a910f4 | 2022-03-16 20:07:23 +0100 | [diff] [blame] | 256 | method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setIpConfiguration(@Nullable android.net.IpConfiguration); |
Xiao Ma | eaaf7d3 | 2022-01-23 16:14:51 +0000 | [diff] [blame] | 257 | method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setNetworkCapabilities(@Nullable android.net.NetworkCapabilities); |
| 258 | } |
| 259 | |
Yan Yan | f8063e3 | 2022-02-08 19:26:29 -0800 | [diff] [blame] | 260 | public class IpSecManager { |
Aaron Huang | 68ca373 | 2022-01-06 19:30:43 +0800 | [diff] [blame] | 261 | method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void applyTunnelModeTransform(@NonNull android.net.IpSecManager.IpSecTunnelInterface, int, @NonNull android.net.IpSecTransform) throws java.io.IOException; |
| 262 | method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecManager.IpSecTunnelInterface createIpSecTunnelInterface(@NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull android.net.Network) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException; |
| 263 | } |
| 264 | |
| 265 | public static final class IpSecManager.IpSecTunnelInterface implements java.lang.AutoCloseable { |
| 266 | method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void addAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException; |
| 267 | method public void close(); |
| 268 | method @NonNull public String getInterfaceName(); |
| 269 | method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void removeAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException; |
| 270 | method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void setUnderlyingNetwork(@NonNull android.net.Network) throws java.io.IOException; |
| 271 | } |
| 272 | |
| 273 | public static class IpSecTransform.Builder { |
| 274 | method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecTransform buildTunnelModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException; |
| 275 | } |
| 276 | |
Junyu Lai | 2ef865e | 2022-01-17 11:52:57 +0000 | [diff] [blame] | 277 | public final class NetworkStats implements java.lang.Iterable<android.net.NetworkStats.Entry> android.os.Parcelable { |
| 278 | ctor public NetworkStats(long, int); |
| 279 | method @NonNull public android.net.NetworkStats add(@NonNull android.net.NetworkStats); |
| 280 | method @NonNull public android.net.NetworkStats addEntry(@NonNull android.net.NetworkStats.Entry); |
| 281 | method public int describeContents(); |
junyulai | 6801690 | 2022-03-28 15:39:12 +0800 | [diff] [blame] | 282 | method @NonNull public java.util.Iterator<android.net.NetworkStats.Entry> iterator(); |
Junyu Lai | 2ef865e | 2022-01-17 11:52:57 +0000 | [diff] [blame] | 283 | method @NonNull public android.net.NetworkStats subtract(@NonNull android.net.NetworkStats); |
| 284 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 285 | field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStats> CREATOR; |
| 286 | field public static final int DEFAULT_NETWORK_ALL = -1; // 0xffffffff |
| 287 | field public static final int DEFAULT_NETWORK_NO = 0; // 0x0 |
| 288 | field public static final int DEFAULT_NETWORK_YES = 1; // 0x1 |
| 289 | field public static final String IFACE_VT = "vt_data0"; |
| 290 | field public static final int METERED_ALL = -1; // 0xffffffff |
| 291 | field public static final int METERED_NO = 0; // 0x0 |
| 292 | field public static final int METERED_YES = 1; // 0x1 |
| 293 | field public static final int ROAMING_ALL = -1; // 0xffffffff |
| 294 | field public static final int ROAMING_NO = 0; // 0x0 |
| 295 | field public static final int ROAMING_YES = 1; // 0x1 |
| 296 | field public static final int SET_ALL = -1; // 0xffffffff |
| 297 | field public static final int SET_DEFAULT = 0; // 0x0 |
| 298 | field public static final int SET_FOREGROUND = 1; // 0x1 |
| 299 | field public static final int TAG_NONE = 0; // 0x0 |
| 300 | field public static final int UID_ALL = -1; // 0xffffffff |
| 301 | field public static final int UID_TETHERING = -5; // 0xfffffffb |
| 302 | } |
| 303 | |
| 304 | public static class NetworkStats.Entry { |
| 305 | ctor public NetworkStats.Entry(@Nullable String, int, int, int, int, int, int, long, long, long, long, long); |
junyulai | 6801690 | 2022-03-28 15:39:12 +0800 | [diff] [blame] | 306 | method public int getDefaultNetwork(); |
| 307 | method public int getMetered(); |
| 308 | method public long getOperations(); |
| 309 | method public int getRoaming(); |
| 310 | method public long getRxBytes(); |
| 311 | method public long getRxPackets(); |
| 312 | method public int getSet(); |
| 313 | method public int getTag(); |
| 314 | method public long getTxBytes(); |
| 315 | method public long getTxPackets(); |
| 316 | method public int getUid(); |
Junyu Lai | 2ef865e | 2022-01-17 11:52:57 +0000 | [diff] [blame] | 317 | } |
| 318 | |
| 319 | public class TrafficStats { |
| 320 | method public static void setThreadStatsTagApp(); |
| 321 | method public static void setThreadStatsTagBackup(); |
Junyu Lai | 2ef865e | 2022-01-17 11:52:57 +0000 | [diff] [blame] | 322 | method public static void setThreadStatsTagRestore(); |
| 323 | field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_END = -113; // 0xffffff8f |
| 324 | field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_START = -128; // 0xffffff80 |
| 325 | field public static final int TAG_NETWORK_STACK_RANGE_END = -257; // 0xfffffeff |
| 326 | field public static final int TAG_NETWORK_STACK_RANGE_START = -768; // 0xfffffd00 |
| 327 | field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_END = -241; // 0xffffff0f |
| 328 | field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_START = -256; // 0xffffff00 |
| 329 | } |
| 330 | |
| 331 | } |
| 332 | |
| 333 | package android.net.netstats.provider { |
| 334 | |
| 335 | public abstract class NetworkStatsProvider { |
| 336 | ctor public NetworkStatsProvider(); |
| 337 | method public void notifyAlertReached(); |
| 338 | method public void notifyLimitReached(); |
| 339 | method public void notifyStatsUpdated(int, @NonNull android.net.NetworkStats, @NonNull android.net.NetworkStats); |
| 340 | method public void notifyWarningReached(); |
| 341 | method public abstract void onRequestStatsUpdate(int); |
| 342 | method public abstract void onSetAlert(long); |
| 343 | method public abstract void onSetLimit(@NonNull String, long); |
| 344 | method public void onSetWarningAndLimit(@NonNull String, long, long); |
| 345 | field public static final int QUOTA_UNLIMITED = -1; // 0xffffffff |
| 346 | } |
| 347 | |
Aaron Huang | 68ca373 | 2022-01-06 19:30:43 +0800 | [diff] [blame] | 348 | } |
| 349 | |