1// 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 final class TetheringConstants { 23 field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType"; 24 field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback"; 25 field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType"; 26 field public static final String EXTRA_RUN_PROVISION = "extraRunProvision"; 27 field public static final String EXTRA_SET_ALARM = "extraSetAlarm"; 28 } 29 30 public class TetheringManager { 31 ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier<android.os.IBinder>); 32 method public int getLastTetherError(@NonNull String); 33 method @NonNull public String[] getTetherableBluetoothRegexs(); 34 method @NonNull public String[] getTetherableIfaces(); 35 method @NonNull public String[] getTetherableUsbRegexs(); 36 method @NonNull public String[] getTetherableWifiRegexs(); 37 method @NonNull public String[] getTetheredIfaces(); 38 method @NonNull public String[] getTetheringErroredIfaces(); 39 method public boolean isTetheringSupported(); 40 method public boolean isTetheringSupported(@NonNull String); 41 method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback); 42 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); 43 method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean); 44 method @Deprecated public int setUsbTethering(boolean); 45 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); 46 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); 47 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering(); 48 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int); 49 method @Deprecated public int tether(@NonNull String); 50 method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback); 51 method @Deprecated public int untether(@NonNull String); 52 field public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED"; 53 field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY"; 54 field public static final String EXTRA_ACTIVE_TETHER = "tetherArray"; 55 field public static final String EXTRA_AVAILABLE_TETHER = "availableArray"; 56 field public static final String EXTRA_ERRORED_TETHER = "erroredArray"; 57 field public static final int TETHERING_BLUETOOTH = 2; // 0x2 58 field public static final int TETHERING_ETHERNET = 5; // 0x5 59 field public static final int TETHERING_INVALID = -1; // 0xffffffff 60 field public static final int TETHERING_NCM = 4; // 0x4 61 field public static final int TETHERING_USB = 1; // 0x1 62 field public static final int TETHERING_WIFI = 0; // 0x0 63 field public static final int TETHERING_WIFI_P2P = 3; // 0x3 64 field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc 65 field public static final int TETHER_ERROR_DISABLE_FORWARDING_ERROR = 9; // 0x9 66 field public static final int TETHER_ERROR_ENABLE_FORWARDING_ERROR = 8; // 0x8 67 field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd 68 field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa 69 field public static final int TETHER_ERROR_INTERNAL_ERROR = 5; // 0x5 70 field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf 71 field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe 72 field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 73 field public static final int TETHER_ERROR_PROVISIONING_FAILED = 11; // 0xb 74 field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2 75 field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6 76 field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4 77 field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1 78 field public static final int TETHER_ERROR_UNKNOWN_TYPE = 16; // 0x10 79 field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3 80 field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7 81 field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2 82 field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1 83 field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0 84 } 85 86 public static interface TetheringManager.OnTetheringEntitlementResultListener { 87 method public void onTetheringEntitlementResult(int); 88 } 89 90 public static interface TetheringManager.StartTetheringCallback { 91 method public default void onTetheringFailed(int); 92 method public default void onTetheringStarted(); 93 } 94 95 public static interface TetheringManager.TetheringEventCallback { 96 method public default void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>); 97 method public default void onError(@NonNull String, int); 98 method public default void onOffloadStatusChanged(int); 99 method public default void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps); 100 method public default void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>); 101 method public default void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>); 102 method public default void onTetheringSupported(boolean); 103 method public default void onUpstreamChanged(@Nullable android.net.Network); 104 } 105 106 public static class TetheringManager.TetheringInterfaceRegexps { 107 method @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs(); 108 method @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs(); 109 method @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs(); 110 } 111 112 public static class TetheringManager.TetheringRequest { 113 method @Nullable public android.net.LinkAddress getClientStaticIpv4Address(); 114 method @Nullable public android.net.LinkAddress getLocalIpv4Address(); 115 method public boolean getShouldShowEntitlementUi(); 116 method public int getTetheringType(); 117 method public boolean isExemptFromEntitlementCheck(); 118 } 119 120 public static class TetheringManager.TetheringRequest.Builder { 121 ctor public TetheringManager.TetheringRequest.Builder(int); 122 method @NonNull public android.net.TetheringManager.TetheringRequest build(); 123 method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean); 124 method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setShouldShowEntitlementUi(boolean); 125 method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress); 126 } 127 128} 129 130package android.os { 131 132 public class StatsFrameworkInitializer { 133 method public static void registerServiceWrappers(); 134 method public static void setStatsServiceManager(@NonNull android.os.StatsServiceManager); 135 } 136 137 public class StatsServiceManager { 138 method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsCompanionServiceRegisterer(); 139 method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsManagerServiceRegisterer(); 140 method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsdServiceRegisterer(); 141 } 142 143 public static class StatsServiceManager.ServiceNotFoundException extends java.lang.Exception { 144 ctor public StatsServiceManager.ServiceNotFoundException(@NonNull String); 145 } 146 147 public static final class StatsServiceManager.ServiceRegisterer { 148 method @Nullable public android.os.IBinder get(); 149 method @Nullable public android.os.IBinder getOrThrow() throws android.os.StatsServiceManager.ServiceNotFoundException; 150 } 151 152} 153 154package android.util { 155 156 public final class Log { 157 method public static int logToRadioBuffer(int, @Nullable String, @Nullable String); 158 } 159 160} 161 162