blob: ac739532a4909d2822b0dea37734c13a495961a8 [file] [log] [blame]
Anton Hansson65d1e302020-01-17 19:03:34 +00001// Signature format: 2.0
2package 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
22 public class TetheringManager {
23 method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback);
24 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);
25 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);
26 method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(int, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback);
27 method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering();
28 method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int);
29 method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback);
30 field public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED";
31 field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY";
32 field public static final String EXTRA_ACTIVE_TETHER = "tetherArray";
33 field public static final String EXTRA_AVAILABLE_TETHER = "availableArray";
34 field public static final String EXTRA_ERRORED_TETHER = "erroredArray";
35 field public static final int TETHERING_BLUETOOTH = 2; // 0x2
36 field public static final int TETHERING_ETHERNET = 5; // 0x5
37 field public static final int TETHERING_INVALID = -1; // 0xffffffff
38 field public static final int TETHERING_NCM = 4; // 0x4
39 field public static final int TETHERING_USB = 1; // 0x1
40 field public static final int TETHERING_WIFI = 0; // 0x0
41 field public static final int TETHERING_WIFI_P2P = 3; // 0x3
42 field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc
43 field public static final int TETHER_ERROR_DISABLE_NAT_ERROR = 9; // 0x9
44 field public static final int TETHER_ERROR_ENABLE_NAT_ERROR = 8; // 0x8
45 field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd
46 field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa
47 field public static final int TETHER_ERROR_MASTER_ERROR = 5; // 0x5
48 field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf
49 field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe
50 field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0
51 field public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb
52 field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2
53 field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6
54 field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4
55 field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1
56 field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3
57 field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7
58 field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2
59 field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1
60 field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0
61 }
62
63 public static interface TetheringManager.OnTetheringEntitlementResultListener {
64 method public void onTetheringEntitlementResult(int);
65 }
66
67 public abstract static class TetheringManager.StartTetheringCallback {
68 ctor public TetheringManager.StartTetheringCallback();
69 method public void onTetheringFailed(int);
70 method public void onTetheringStarted();
71 }
72
73 public abstract static class TetheringManager.TetheringEventCallback {
74 ctor public TetheringManager.TetheringEventCallback();
75 method public void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>);
76 method public void onError(@NonNull String, int);
77 method public void onOffloadStatusChanged(int);
78 method @Deprecated public void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps);
79 method public void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>);
80 method public void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>);
81 method public void onTetheringSupported(boolean);
82 method public void onUpstreamChanged(@Nullable android.net.Network);
83 }
84
85 @Deprecated public static class TetheringManager.TetheringInterfaceRegexps {
86 ctor @Deprecated public TetheringManager.TetheringInterfaceRegexps(@NonNull String[], @NonNull String[], @NonNull String[]);
87 method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs();
88 method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs();
89 method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs();
90 }
91
92 public static class TetheringManager.TetheringRequest {
93 }
94
95 public static class TetheringManager.TetheringRequest.Builder {
96 ctor public TetheringManager.TetheringRequest.Builder(int);
97 method @NonNull public android.net.TetheringManager.TetheringRequest build();
98 method @Nullable public android.net.LinkAddress getClientStaticIpv4Address();
99 method @Nullable public android.net.LinkAddress getLocalIpv4Address();
100 method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean);
101 method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setSilentProvisioning(boolean);
102 method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress);
103 }
104
105}
106