Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 1 | // Signature format: 2.0 |
| 2 | package android.net { |
| 3 | |
| 4 | public final class TetheredClient implements android.os.Parcelable { |
| 5 | ctor public TetheredClient(@NonNull android.net.MacAddress, @NonNull java.util.Collection<android.net.TetheredClient.AddressInfo>, int); |
| 6 | method public int describeContents(); |
| 7 | method @NonNull public java.util.List<android.net.TetheredClient.AddressInfo> getAddresses(); |
| 8 | method @NonNull public android.net.MacAddress getMacAddress(); |
| 9 | method public int getTetheringType(); |
| 10 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 11 | field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient> CREATOR; |
| 12 | } |
| 13 | |
| 14 | public static final class TetheredClient.AddressInfo implements android.os.Parcelable { |
| 15 | method public int describeContents(); |
| 16 | method @NonNull public android.net.LinkAddress getAddress(); |
| 17 | method @Nullable public String getHostname(); |
| 18 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 19 | field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient.AddressInfo> CREATOR; |
| 20 | } |
| 21 | |
markchien | 35ad54b | 2021-05-17 20:43:41 +0800 | [diff] [blame] | 22 | public final class TetheringInterface implements android.os.Parcelable { |
| 23 | ctor public TetheringInterface(int, @NonNull String); |
| 24 | method public int describeContents(); |
| 25 | method @NonNull public String getInterface(); |
| 26 | method public int getType(); |
| 27 | method public void writeToParcel(@NonNull android.os.Parcel, int); |
| 28 | field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheringInterface> CREATOR; |
| 29 | } |
| 30 | |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 31 | public class TetheringManager { |
| 32 | method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback); |
| 33 | method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void requestLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.OnTetheringEntitlementResultListener); |
| 34 | method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(@NonNull android.net.TetheringManager.TetheringRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 35 | method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering(); |
| 36 | method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int); |
| 37 | method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback); |
markchien | 35ad54b | 2021-05-17 20:43:41 +0800 | [diff] [blame] | 38 | field @Deprecated public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED"; |
Lorenzo Colitti | 8a36c29 | 2021-04-13 17:17:44 +0900 | [diff] [blame] | 39 | field public static final int CONNECTIVITY_SCOPE_GLOBAL = 1; // 0x1 |
| 40 | field public static final int CONNECTIVITY_SCOPE_LOCAL = 2; // 0x2 |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 41 | field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY"; |
| 42 | field public static final String EXTRA_ACTIVE_TETHER = "tetherArray"; |
| 43 | field public static final String EXTRA_AVAILABLE_TETHER = "availableArray"; |
| 44 | field public static final String EXTRA_ERRORED_TETHER = "erroredArray"; |
| 45 | field public static final int TETHERING_BLUETOOTH = 2; // 0x2 |
| 46 | field public static final int TETHERING_ETHERNET = 5; // 0x5 |
| 47 | field public static final int TETHERING_INVALID = -1; // 0xffffffff |
| 48 | field public static final int TETHERING_NCM = 4; // 0x4 |
| 49 | field public static final int TETHERING_USB = 1; // 0x1 |
Seungjae Yoo | 07b8fe1 | 2024-06-19 16:18:51 +0900 | [diff] [blame^] | 50 | field @FlaggedApi("com.android.net.flags.tethering_request_virtual") public static final int TETHERING_VIRTUAL = 7; // 0x7 |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 51 | field public static final int TETHERING_WIFI = 0; // 0x0 |
| 52 | field public static final int TETHERING_WIFI_P2P = 3; // 0x3 |
| 53 | field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 54 | field public static final int TETHER_ERROR_DISABLE_FORWARDING_ERROR = 9; // 0x9 |
| 55 | field public static final int TETHER_ERROR_ENABLE_FORWARDING_ERROR = 8; // 0x8 |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 56 | field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd |
| 57 | field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 58 | field public static final int TETHER_ERROR_INTERNAL_ERROR = 5; // 0x5 |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 59 | field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf |
| 60 | field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe |
| 61 | field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 62 | field public static final int TETHER_ERROR_PROVISIONING_FAILED = 11; // 0xb |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 63 | field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2 |
| 64 | field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6 |
| 65 | field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4 |
| 66 | field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1 |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 67 | field public static final int TETHER_ERROR_UNKNOWN_TYPE = 16; // 0x10 |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 68 | field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3 |
| 69 | field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7 |
| 70 | field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2 |
| 71 | field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1 |
| 72 | field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0 |
| 73 | } |
| 74 | |
| 75 | public static interface TetheringManager.OnTetheringEntitlementResultListener { |
| 76 | method public void onTetheringEntitlementResult(int); |
| 77 | } |
| 78 | |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 79 | public static interface TetheringManager.StartTetheringCallback { |
| 80 | method public default void onTetheringFailed(int); |
| 81 | method public default void onTetheringStarted(); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 82 | } |
| 83 | |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 84 | public static interface TetheringManager.TetheringEventCallback { |
| 85 | method public default void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>); |
| 86 | method public default void onError(@NonNull String, int); |
markchien | 35ad54b | 2021-05-17 20:43:41 +0800 | [diff] [blame] | 87 | method public default void onError(@NonNull android.net.TetheringInterface, int); |
Lorenzo Colitti | 8a36c29 | 2021-04-13 17:17:44 +0900 | [diff] [blame] | 88 | method public default void onLocalOnlyInterfacesChanged(@NonNull java.util.List<java.lang.String>); |
markchien | 35ad54b | 2021-05-17 20:43:41 +0800 | [diff] [blame] | 89 | method public default void onLocalOnlyInterfacesChanged(@NonNull java.util.Set<android.net.TetheringInterface>); |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 90 | method public default void onOffloadStatusChanged(int); |
| 91 | method public default void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>); |
markchien | 35ad54b | 2021-05-17 20:43:41 +0800 | [diff] [blame] | 92 | method public default void onTetherableInterfacesChanged(@NonNull java.util.Set<android.net.TetheringInterface>); |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 93 | method public default void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>); |
markchien | 35ad54b | 2021-05-17 20:43:41 +0800 | [diff] [blame] | 94 | method public default void onTetheredInterfacesChanged(@NonNull java.util.Set<android.net.TetheringInterface>); |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 95 | method public default void onTetheringSupported(boolean); |
| 96 | method public default void onUpstreamChanged(@Nullable android.net.Network); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 97 | } |
| 98 | |
Quang Anh Luong | 1252f7f | 2024-02-07 13:41:40 +0900 | [diff] [blame] | 99 | public static final class TetheringManager.TetheringRequest implements android.os.Parcelable { |
| 100 | method @FlaggedApi("com.android.net.flags.tethering_request_with_soft_ap_config") public int describeContents(); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 101 | method @Nullable public android.net.LinkAddress getClientStaticIpv4Address(); |
Lorenzo Colitti | 8a36c29 | 2021-04-13 17:17:44 +0900 | [diff] [blame] | 102 | method public int getConnectivityScope(); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 103 | method @Nullable public android.net.LinkAddress getLocalIpv4Address(); |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 104 | method public boolean getShouldShowEntitlementUi(); |
| 105 | method public int getTetheringType(); |
| 106 | method public boolean isExemptFromEntitlementCheck(); |
Quang Anh Luong | 1252f7f | 2024-02-07 13:41:40 +0900 | [diff] [blame] | 107 | method @FlaggedApi("com.android.net.flags.tethering_request_with_soft_ap_config") public void writeToParcel(@NonNull android.os.Parcel, int); |
| 108 | field @FlaggedApi("com.android.net.flags.tethering_request_with_soft_ap_config") @NonNull public static final android.os.Parcelable.Creator<android.net.TetheringManager.TetheringRequest> CREATOR; |
junyulai | a8b3777 | 2020-03-23 10:47:42 +0800 | [diff] [blame] | 109 | } |
| 110 | |
| 111 | public static class TetheringManager.TetheringRequest.Builder { |
| 112 | ctor public TetheringManager.TetheringRequest.Builder(int); |
| 113 | method @NonNull public android.net.TetheringManager.TetheringRequest build(); |
Lorenzo Colitti | 8a36c29 | 2021-04-13 17:17:44 +0900 | [diff] [blame] | 114 | method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setConnectivityScope(int); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 115 | method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean); |
Anton Hansson | 4168cea | 2020-03-20 13:24:30 +0000 | [diff] [blame] | 116 | method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setShouldShowEntitlementUi(boolean); |
Anton Hansson | 65d1e30 | 2020-01-17 19:03:34 +0000 | [diff] [blame] | 117 | method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress); |
| 118 | } |
| 119 | |
| 120 | } |
| 121 | |