blob: 89b83e63ee16e6abfa1cffc42c3d051530f7e75b [file] [log] [blame]
Jiyong Park2e6cdcc2019-12-20 15:30:28 +09001// Signature format: 2.0
Anton Hansson7f941692020-02-08 12:15:25 +00002package android.annotation {
3
4 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.FIELD}) public @interface NonNull {
5 }
6
7 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.FIELD}) public @interface Nullable {
8 }
9
10}
11
markchien8cf2a552020-02-14 11:55:48 +080012package android.net {
13
14 public final class TetheredClient implements android.os.Parcelable {
15 ctor public TetheredClient(@NonNull android.net.MacAddress, @NonNull java.util.Collection<android.net.TetheredClient.AddressInfo>, int);
16 method public int describeContents();
17 method @NonNull public java.util.List<android.net.TetheredClient.AddressInfo> getAddresses();
18 method @NonNull public android.net.MacAddress getMacAddress();
19 method public int getTetheringType();
20 method public void writeToParcel(@NonNull android.os.Parcel, int);
21 field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient> CREATOR;
22 }
23
24 public static final class TetheredClient.AddressInfo implements android.os.Parcelable {
25 method public int describeContents();
26 method @NonNull public android.net.LinkAddress getAddress();
27 method @Nullable public String getHostname();
28 method public void writeToParcel(@NonNull android.os.Parcel, int);
29 field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient.AddressInfo> CREATOR;
30 }
31
32 public class TetheringConstants {
markchien8cf2a552020-02-14 11:55:48 +080033 field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType";
34 field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback";
35 field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType";
36 field public static final String EXTRA_RUN_PROVISION = "extraRunProvision";
37 field public static final String EXTRA_SET_ALARM = "extraSetAlarm";
38 }
39
40 public class TetheringManager {
41 ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier<android.os.IBinder>);
42 method public int getLastTetherError(@NonNull String);
43 method @NonNull public String[] getTetherableBluetoothRegexs();
44 method @NonNull public String[] getTetherableIfaces();
45 method @NonNull public String[] getTetherableUsbRegexs();
46 method @NonNull public String[] getTetherableWifiRegexs();
47 method @NonNull public String[] getTetheredIfaces();
48 method @NonNull public String[] getTetheringErroredIfaces();
49 method public boolean isTetheringSupported();
50 method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback);
51 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void requestLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.OnTetheringEntitlementResultListener);
52 method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean);
53 method @Deprecated public int setUsbTethering(boolean);
54 method @RequiresPermission(anyOf={"android.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);
55 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(int, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback);
56 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering();
57 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int);
58 method @Deprecated public int tether(@NonNull String);
59 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback);
60 method @Deprecated public int untether(@NonNull String);
61 field public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED";
62 field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY";
63 field public static final String EXTRA_ACTIVE_TETHER = "tetherArray";
64 field public static final String EXTRA_AVAILABLE_TETHER = "availableArray";
65 field public static final String EXTRA_ERRORED_TETHER = "erroredArray";
66 field public static final int TETHERING_BLUETOOTH = 2; // 0x2
67 field public static final int TETHERING_ETHERNET = 5; // 0x5
68 field public static final int TETHERING_INVALID = -1; // 0xffffffff
69 field public static final int TETHERING_NCM = 4; // 0x4
70 field public static final int TETHERING_USB = 1; // 0x1
71 field public static final int TETHERING_WIFI = 0; // 0x0
72 field public static final int TETHERING_WIFI_P2P = 3; // 0x3
73 field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc
74 field public static final int TETHER_ERROR_DISABLE_NAT_ERROR = 9; // 0x9
75 field public static final int TETHER_ERROR_ENABLE_NAT_ERROR = 8; // 0x8
76 field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd
77 field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa
78 field public static final int TETHER_ERROR_MASTER_ERROR = 5; // 0x5
79 field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf
80 field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe
81 field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0
82 field public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb
83 field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2
84 field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6
85 field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4
86 field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1
87 field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3
88 field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7
markchiende31d852020-03-02 23:27:48 +080089 field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2
90 field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1
91 field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0
markchien8cf2a552020-02-14 11:55:48 +080092 }
93
94 public static interface TetheringManager.OnTetheringEntitlementResultListener {
95 method public void onTetheringEntitlementResult(int);
96 }
97
98 public abstract static class TetheringManager.StartTetheringCallback {
99 ctor public TetheringManager.StartTetheringCallback();
100 method public void onTetheringFailed(int);
101 method public void onTetheringStarted();
102 }
103
104 public abstract static class TetheringManager.TetheringEventCallback {
105 ctor public TetheringManager.TetheringEventCallback();
106 method public void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>);
107 method public void onError(@NonNull String, int);
markchiende31d852020-03-02 23:27:48 +0800108 method public void onOffloadStatusChanged(int);
markchien8cf2a552020-02-14 11:55:48 +0800109 method @Deprecated public void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps);
110 method public void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>);
111 method public void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>);
112 method public void onTetheringSupported(boolean);
113 method public void onUpstreamChanged(@Nullable android.net.Network);
114 }
115
116 @Deprecated public static class TetheringManager.TetheringInterfaceRegexps {
117 ctor @Deprecated public TetheringManager.TetheringInterfaceRegexps(@NonNull String[], @NonNull String[], @NonNull String[]);
118 method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs();
119 method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs();
120 method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs();
121 }
122
123 public static class TetheringManager.TetheringRequest {
124 }
125
126 public static class TetheringManager.TetheringRequest.Builder {
127 ctor public TetheringManager.TetheringRequest.Builder(int);
128 method @NonNull public android.net.TetheringManager.TetheringRequest build();
129 method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean);
130 method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setSilentProvisioning(boolean);
131 method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder useStaticIpv4Addresses(@NonNull android.net.LinkAddress);
132 }
133
134}
135