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