xref: /aosp_15_r20/prebuilts/sdk/36/module-lib/api/android.txt (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
1// Signature format: 2.0
2package android {
3
4  public static final class Manifest.permission {
5    field public static final String BLUETOOTH_STACK = "android.permission.BLUETOOTH_STACK";
6    field public static final String CONTROL_AUTOMOTIVE_GNSS = "android.permission.CONTROL_AUTOMOTIVE_GNSS";
7    field public static final String GET_INTENT_SENDER_INTENT = "android.permission.GET_INTENT_SENDER_INTENT";
8    field public static final String MAKE_UID_VISIBLE = "android.permission.MAKE_UID_VISIBLE";
9  }
10
11}
12
13package android.adservices {
14
15  public class AdServicesFrameworkInitializer {
16    method public static void registerServiceWrappers();
17  }
18
19}
20
21package android.app {
22
23  @UiContext public class Activity extends android.view.ContextThemeWrapper implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback android.view.LayoutInflater.Factory2 android.view.View.OnCreateContextMenuListener android.view.Window.Callback {
24    method public final boolean addDumpable(@NonNull android.util.Dumpable);
25    method public final boolean isResumed();
26  }
27
28  public class ActivityManager {
29    method @RequiresPermission(android.Manifest.permission.SET_ACTIVITY_WATCHER) public void addHomeVisibilityListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.HomeVisibilityListener);
30    method @NonNull @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int[] getUidFrozenState(@NonNull int[]);
31    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void registerUidFrozenStateChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.ActivityManager.UidFrozenStateChangedCallback);
32    method @RequiresPermission(android.Manifest.permission.SET_ACTIVITY_WATCHER) public void removeHomeVisibilityListener(@NonNull android.app.HomeVisibilityListener);
33    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void unregisterUidFrozenStateChangedCallback(@NonNull android.app.ActivityManager.UidFrozenStateChangedCallback);
34    method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public boolean updateMccMncConfiguration(@NonNull String, @NonNull String);
35  }
36
37  public static interface ActivityManager.UidFrozenStateChangedCallback {
38    method public void onUidFrozenStateChanged(@NonNull int[], @NonNull int[]);
39    field public static final int UID_FROZEN_STATE_FROZEN = 1; // 0x1
40    field public static final int UID_FROZEN_STATE_UNFROZEN = 2; // 0x2
41  }
42
43  public class AppOpsManager {
44    field public static final String OPSTR_NO_ISOLATED_STORAGE = "android:no_isolated_storage";
45  }
46
47  public class BroadcastOptions {
48    method @Deprecated public int getMaxManifestReceiverApiLevel();
49    method @Deprecated public void setMaxManifestReceiverApiLevel(int);
50  }
51
52  public abstract class HomeVisibilityListener {
53    ctor public HomeVisibilityListener();
54    method public abstract void onHomeVisibilityChanged(boolean);
55  }
56
57  public class NotificationManager {
58    method public boolean hasEnabledNotificationListener(@NonNull String, @NonNull android.os.UserHandle);
59    field public static final String ACTION_NOTIFICATION_LISTENER_ENABLED_CHANGED = "android.app.action.NOTIFICATION_LISTENER_ENABLED_CHANGED";
60  }
61
62  public final class PendingIntent implements android.os.Parcelable {
63    method public boolean addCancelListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.PendingIntent.CancelListener);
64    method @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public boolean intentFilterEquals(@Nullable android.app.PendingIntent);
65    method @NonNull @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public java.util.List<android.content.pm.ResolveInfo> queryIntentComponents(int);
66    method public void removeCancelListener(@NonNull android.app.PendingIntent.CancelListener);
67  }
68
69  public static interface PendingIntent.CancelListener {
70    method public void onCanceled(@NonNull android.app.PendingIntent);
71  }
72
73  public class StatusBarManager {
74    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setExpansionDisabledForSimNetworkLock(boolean);
75  }
76
77}
78
79package android.app.admin {
80
81  public class DevicePolicyManager {
82    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void acknowledgeNewUserDisclaimer();
83    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public android.os.UserHandle getLogoutUser();
84    method public boolean hasManagedProfileCallerIdAccess(@NonNull android.os.UserHandle, @NonNull String);
85    method public boolean hasManagedProfileContactsAccess(@NonNull android.os.UserHandle, @NonNull String);
86    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public int logoutUser();
87    field public static final String ACTION_SHOW_NEW_USER_DISCLAIMER = "android.app.action.SHOW_NEW_USER_DISCLAIMER";
88  }
89
90}
91
92package android.app.ecm {
93
94  public class EnhancedConfirmationFrameworkInitializer {
95    method public static void registerServiceWrappers();
96  }
97
98}
99
100package android.app.role {
101
102  public class RoleFrameworkInitializer {
103    method public static void registerServiceWrappers();
104  }
105
106  public final class RoleManager {
107    method @Nullable public String getBrowserRoleHolder(int);
108    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getEmergencyRoleHolder(int);
109    method @Nullable public String getSmsRoleHolder(int);
110    method @Nullable @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public boolean setBrowserRoleHolder(@Nullable String, int);
111  }
112
113}
114
115package android.app.sdksandbox {
116
117  public final class SdkSandboxManager {
118    field public static final String ACTION_START_SANDBOXED_ACTIVITY = "android.app.sdksandbox.action.START_SANDBOXED_ACTIVITY";
119  }
120
121  public class SdkSandboxManagerFrameworkInitializer {
122    method public static void registerServiceWrappers();
123  }
124
125}
126
127package android.app.sdksandbox.sandboxactivity {
128
129  public interface ActivityContextInfo {
130    method public default int getContextFlags();
131    method @NonNull public android.content.pm.ApplicationInfo getSdkApplicationInfo();
132  }
133
134  public abstract class SdkSandboxActivityAuthority {
135    method @NonNull public android.app.sdksandbox.sandboxactivity.ActivityContextInfo getActivityContextInfo(@NonNull android.content.Intent);
136    method @NonNull public static android.app.sdksandbox.sandboxactivity.SdkSandboxActivityAuthority getInstance();
137    method public static boolean isSdkSandboxActivityIntent(@NonNull android.content.Context, @Nullable android.content.Intent);
138  }
139
140}
141
142package android.app.usage {
143
144  public class NetworkStatsManager {
145    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void forceUpdate();
146    method public static int getCollapsedRatType(int);
147    method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.net.NetworkStats getMobileUidStats();
148    method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.net.NetworkStats getWifiUidStats();
149    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void noteUidForeground(int, boolean);
150    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyNetworkStatus(@NonNull java.util.List<android.net.Network>, @NonNull java.util.List<android.net.NetworkStateSnapshot>, @Nullable String, @NonNull java.util.List<android.net.UnderlyingNetworkInfo>);
151    method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForDevice(@NonNull android.net.NetworkTemplate, long, long);
152    method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForUidTagState(@NonNull android.net.NetworkTemplate, long, long, int, int, int) throws java.lang.SecurityException;
153    method @NonNull @WorkerThread public android.app.usage.NetworkStats querySummary(@NonNull android.net.NetworkTemplate, long, long) throws java.lang.SecurityException;
154    method @NonNull @WorkerThread public android.app.usage.NetworkStats.Bucket querySummaryForDevice(@NonNull android.net.NetworkTemplate, long, long);
155    method @NonNull @WorkerThread public android.app.usage.NetworkStats queryTaggedSummary(@NonNull android.net.NetworkTemplate, long, long) throws java.lang.SecurityException;
156    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}, conditional=true) public void registerUsageCallback(@NonNull android.net.NetworkTemplate, long, @NonNull java.util.concurrent.Executor, @NonNull android.app.usage.NetworkStatsManager.UsageCallback);
157    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setDefaultGlobalAlert(long);
158    method public void setPollForce(boolean);
159    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setPollOnOpen(boolean);
160    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setStatsProviderWarningAndLimitAsync(@NonNull String, long, long);
161    field public static final int NETWORK_TYPE_5G_NSA = -2; // 0xfffffffe
162  }
163
164  public abstract static class NetworkStatsManager.UsageCallback {
165    method public void onThresholdReached(@NonNull android.net.NetworkTemplate);
166  }
167
168}
169
170package android.bluetooth {
171
172  public class BluetoothFrameworkInitializer {
173    method public static void registerServiceWrappers();
174    method public static void setBinderCallsStatsInitializer(@NonNull java.util.function.Consumer<android.content.Context>);
175    method public static void setBluetoothServiceManager(@NonNull android.os.BluetoothServiceManager);
176  }
177
178  public final class BluetoothPan implements android.bluetooth.BluetoothProfile {
179    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED, android.Manifest.permission.TETHER_PRIVILEGED}) public android.net.TetheringManager.TetheredInterfaceRequest requestTetheredInterface(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheredInterfaceCallback);
180  }
181
182}
183
184package android.compat {
185
186  public final class Compatibility {
187    method public static void clearBehaviorChangeDelegate();
188    method public static void clearOverrides();
189    method public static boolean isChangeEnabled(long);
190    method public static void reportUnconditionalChange(long);
191    method public static void setBehaviorChangeDelegate(android.compat.Compatibility.BehaviorChangeDelegate);
192    method public static void setOverrides(android.compat.Compatibility.ChangeConfig);
193  }
194
195  public static interface Compatibility.BehaviorChangeDelegate {
196    method public default boolean isChangeEnabled(long);
197    method public default void onChangeReported(long);
198  }
199
200  public static final class Compatibility.ChangeConfig {
201    ctor public Compatibility.ChangeConfig(@NonNull java.util.Set<java.lang.Long>, @NonNull java.util.Set<java.lang.Long>);
202    method @NonNull public long[] getDisabledChangesArray();
203    method @NonNull public java.util.Set<java.lang.Long> getDisabledSet();
204    method @NonNull public long[] getEnabledChangesArray();
205    method @NonNull public java.util.Set<java.lang.Long> getEnabledSet();
206    method public boolean isEmpty();
207    method public boolean isForceDisabled(long);
208    method public boolean isForceEnabled(long);
209  }
210
211}
212
213package android.content {
214
215  public abstract class ContentProvider implements android.content.ComponentCallbacks2 {
216    method @NonNull public static android.net.Uri createContentUriForUser(@NonNull android.net.Uri, @NonNull android.os.UserHandle);
217  }
218
219  public abstract class ContentResolver {
220    method @RequiresPermission(value=android.Manifest.permission.INTERACT_ACROSS_USERS_FULL, conditional=true) public final void registerContentObserverAsUser(@NonNull android.net.Uri, boolean, @NonNull android.database.ContentObserver, @NonNull android.os.UserHandle);
221  }
222
223  public abstract class Context {
224    method @NonNull public android.content.Context createContextForSdkInSandbox(@NonNull android.content.pm.ApplicationInfo, int) throws android.content.pm.PackageManager.NameNotFoundException;
225    method @NonNull public android.os.IBinder getProcessToken();
226    method @NonNull public android.os.UserHandle getUser();
227    field public static final String PAC_PROXY_SERVICE = "pac_proxy";
228    field public static final String TEST_NETWORK_SERVICE = "test_network";
229  }
230
231  public class Intent implements java.lang.Cloneable android.os.Parcelable {
232    field public static final String ACTION_SETTING_RESTORED = "android.os.action.SETTING_RESTORED";
233    field public static final String EXTRA_SETTING_NAME = "setting_name";
234    field public static final String EXTRA_SETTING_NEW_VALUE = "new_value";
235    field public static final String EXTRA_SETTING_PREVIOUS_VALUE = "previous_value";
236    field public static final String EXTRA_SETTING_RESTORED_FROM_SDK_INT = "restored_from_sdk_int";
237  }
238
239}
240
241package android.content.pm {
242
243  public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
244    method @NonNull public java.util.List<android.content.pm.SharedLibraryInfo> getSharedLibraryInfos();
245    field public static final int HIDDEN_API_ENFORCEMENT_DEFAULT = -1; // 0xffffffff
246    field public static final int HIDDEN_API_ENFORCEMENT_DISABLED = 0; // 0x0
247    field public static final int HIDDEN_API_ENFORCEMENT_ENABLED = 2; // 0x2
248    field public static final int HIDDEN_API_ENFORCEMENT_JUST_WARN = 1; // 0x1
249  }
250
251  public abstract class PackageManager {
252    method @NonNull public String getSdkSandboxPackageName();
253    method @RequiresPermission(android.Manifest.permission.MAKE_UID_VISIBLE) public void makeUidVisible(int, int);
254    field public static final String EXTRA_VERIFICATION_ROOT_HASH = "android.content.pm.extra.VERIFICATION_ROOT_HASH";
255    field public static final int MATCH_STATIC_SHARED_AND_SDK_LIBRARIES = 67108864; // 0x4000000
256  }
257
258  public class SignedPackage {
259    method @NonNull public byte[] getCertificateDigest();
260    method @NonNull public String getPackageName();
261  }
262
263}
264
265package android.devicelock {
266
267  public final class DeviceLockFrameworkInitializer {
268    method public static void registerServiceWrappers();
269  }
270
271}
272
273package android.hardware.usb {
274
275  public class UsbManager {
276    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getGadgetHalVersion();
277    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbBandwidthMbps();
278    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbHalVersion();
279    field public static final int GADGET_HAL_NOT_SUPPORTED = -1; // 0xffffffff
280    field public static final int GADGET_HAL_V1_0 = 10; // 0xa
281    field public static final int GADGET_HAL_V1_1 = 11; // 0xb
282    field public static final int GADGET_HAL_V1_2 = 12; // 0xc
283    field public static final int GADGET_HAL_V2_0 = 20; // 0x14
284    field public static final int USB_DATA_TRANSFER_RATE_10G = 10240; // 0x2800
285    field public static final int USB_DATA_TRANSFER_RATE_20G = 20480; // 0x5000
286    field public static final int USB_DATA_TRANSFER_RATE_40G = 40960; // 0xa000
287    field public static final int USB_DATA_TRANSFER_RATE_5G = 5120; // 0x1400
288    field public static final int USB_DATA_TRANSFER_RATE_FULL_SPEED = 12; // 0xc
289    field public static final int USB_DATA_TRANSFER_RATE_HIGH_SPEED = 480; // 0x1e0
290    field public static final int USB_DATA_TRANSFER_RATE_LOW_SPEED = 2; // 0x2
291    field public static final int USB_DATA_TRANSFER_RATE_UNKNOWN = -1; // 0xffffffff
292    field public static final int USB_HAL_NOT_SUPPORTED = -1; // 0xffffffff
293    field public static final int USB_HAL_RETRY = -2; // 0xfffffffe
294    field public static final int USB_HAL_V1_0 = 10; // 0xa
295    field public static final int USB_HAL_V1_1 = 11; // 0xb
296    field public static final int USB_HAL_V1_2 = 12; // 0xc
297    field public static final int USB_HAL_V1_3 = 13; // 0xd
298    field public static final int USB_HAL_V2_0 = 20; // 0x14
299  }
300
301}
302
303package android.health.connect {
304
305  public class HealthServicesInitializer {
306    method public static void registerServiceWrappers();
307  }
308
309}
310
311package android.location {
312
313  public class LocationManager {
314    method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public boolean injectLocation(@NonNull android.location.Location);
315    method @RequiresPermission(android.Manifest.permission.CONTROL_AUTOMOTIVE_GNSS) public boolean isAutomotiveGnssSuspended();
316    method @RequiresPermission(android.Manifest.permission.CONTROL_AUTOMOTIVE_GNSS) public void setAutomotiveGnssSuspended(boolean);
317  }
318
319}
320
321package android.media {
322
323  public class AudioManager {
324    method public void adjustStreamVolumeForUid(int, int, int, @NonNull String, int, int, int);
325    method public void adjustSuggestedStreamVolumeForUid(int, int, int, @NonNull String, int, int, int);
326    method @NonNull public java.util.List<android.bluetooth.BluetoothCodecConfig> getHwOffloadFormatsSupportedForA2dp();
327    method @NonNull public java.util.List<android.bluetooth.BluetoothLeAudioCodecConfig> getHwOffloadFormatsSupportedForLeAudio();
328    method @NonNull public java.util.List<android.bluetooth.BluetoothLeAudioCodecConfig> getHwOffloadFormatsSupportedForLeBroadcast();
329    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void handleBluetoothActiveDeviceChanged(@Nullable android.bluetooth.BluetoothDevice, @Nullable android.bluetooth.BluetoothDevice, @NonNull android.media.BluetoothProfileConnectionInfo);
330    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void setA2dpSuspended(boolean);
331    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void setBluetoothHeadsetProperties(@NonNull String, boolean, boolean);
332    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void setHfpEnabled(boolean);
333    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void setHfpSamplingRate(int);
334    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void setHfpVolume(int);
335    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_STACK) public void setLeAudioSuspended(boolean);
336    method public void setStreamVolumeForUid(int, int, int, @NonNull String, int, int, int);
337    field public static final int FLAG_FROM_KEY = 4096; // 0x1000
338  }
339
340  public final class BluetoothProfileConnectionInfo implements android.os.Parcelable {
341    method @NonNull public static android.media.BluetoothProfileConnectionInfo createA2dpInfo(boolean, int);
342    method @NonNull public static android.media.BluetoothProfileConnectionInfo createA2dpSinkInfo(int);
343    method @NonNull public static android.media.BluetoothProfileConnectionInfo createHearingAidInfo(boolean);
344    method @NonNull public static android.media.BluetoothProfileConnectionInfo createLeAudioInfo(boolean, boolean);
345    method @NonNull public static android.media.BluetoothProfileConnectionInfo createLeAudioOutputInfo(boolean, int);
346    method public int describeContents();
347    method public int getProfile();
348    method public int getVolume();
349    method public boolean isLeOutput();
350    method public boolean isSuppressNoisyIntent();
351    method public void writeToParcel(@NonNull android.os.Parcel, int);
352    field @NonNull public static final android.os.Parcelable.Creator<android.media.BluetoothProfileConnectionInfo> CREATOR;
353  }
354
355  public class MediaCommunicationManager {
356    method public void dispatchMediaKeyEvent(@NonNull android.view.KeyEvent, boolean);
357    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaCommunicationManager.SessionCallback);
358    method public void unregisterSessionCallback(@NonNull android.media.MediaCommunicationManager.SessionCallback);
359  }
360
361  public static interface MediaCommunicationManager.SessionCallback {
362    method public default void onSession2TokenCreated(@NonNull android.media.Session2Token);
363    method public default void onSession2TokenCreated(@NonNull android.media.Session2Token, int);
364    method public default void onSession2TokensChanged(@NonNull java.util.List<android.media.Session2Token>);
365  }
366
367  public class MediaFrameworkInitializer {
368    method public static void registerServiceWrappers();
369    method public static void setMediaServiceManager(@NonNull android.media.MediaServiceManager);
370  }
371
372  public class MediaMetadataRetriever implements java.lang.AutoCloseable {
373    field public static final int METADATA_KEY_VIDEO_CODEC_MIME_TYPE = 40; // 0x28
374  }
375
376  @Deprecated public final class MediaParceledListSlice<T extends android.os.Parcelable> implements android.os.Parcelable {
377    ctor @Deprecated public MediaParceledListSlice(@NonNull java.util.List<T>);
378    method @Deprecated public int describeContents();
379    method @Deprecated @NonNull public static <T extends android.os.Parcelable> android.media.MediaParceledListSlice<T> emptyList();
380    method @Deprecated public java.util.List<T> getList();
381    method @Deprecated public void setInlineCountLimit(int);
382    method @Deprecated public void writeToParcel(android.os.Parcel, int);
383    field @Deprecated @NonNull public static final android.os.Parcelable.ClassLoaderCreator<android.media.MediaParceledListSlice> CREATOR;
384  }
385
386  public class MediaServiceManager {
387    method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaCommunicationServiceRegisterer();
388    method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaSessionServiceRegisterer();
389    method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaTranscodingServiceRegisterer();
390  }
391
392  public static final class MediaServiceManager.ServiceRegisterer {
393    method @Nullable public android.os.IBinder get();
394  }
395
396}
397
398package android.media.session {
399
400  public static final class MediaController.PlaybackInfo implements android.os.Parcelable {
401    ctor public MediaController.PlaybackInfo(int, int, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.media.AudioAttributes, @Nullable String);
402  }
403
404  public final class MediaSession {
405    field public static final int FLAG_EXCLUSIVE_GLOBAL_PRIORITY = 65536; // 0x10000
406  }
407
408  public static final class MediaSession.Token implements android.os.Parcelable {
409    method public int getUid();
410  }
411
412  public final class MediaSessionManager {
413    method public void addOnActiveSessionsChangedListener(@Nullable android.content.ComponentName, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener);
414    method public void dispatchMediaKeyEvent(@NonNull android.view.KeyEvent, boolean);
415    method public void dispatchMediaKeyEventAsSystemService(@NonNull android.view.KeyEvent);
416    method public boolean dispatchMediaKeyEventToSessionAsSystemService(@NonNull android.view.KeyEvent, @NonNull android.media.session.MediaSession.Token);
417    method public void dispatchVolumeKeyEvent(@NonNull android.view.KeyEvent, int, boolean);
418    method public void dispatchVolumeKeyEventAsSystemService(@NonNull android.view.KeyEvent, int);
419    method public void dispatchVolumeKeyEventToSessionAsSystemService(@NonNull android.view.KeyEvent, @NonNull android.media.session.MediaSession.Token);
420    method @NonNull public java.util.List<android.media.session.MediaController> getActiveSessionsForUser(@Nullable android.content.ComponentName, @NonNull android.os.UserHandle);
421    method public void registerRemoteSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.RemoteSessionCallback);
422    method public void unregisterRemoteSessionCallback(@NonNull android.media.session.MediaSessionManager.RemoteSessionCallback);
423    field public static final int RESULT_MEDIA_KEY_HANDLED = 1; // 0x1
424    field public static final int RESULT_MEDIA_KEY_NOT_HANDLED = 0; // 0x0
425  }
426
427  public static interface MediaSessionManager.RemoteSessionCallback {
428    method public void onDefaultRemoteSessionChanged(@Nullable android.media.session.MediaSession.Token);
429    method public void onVolumeChanged(@NonNull android.media.session.MediaSession.Token, int);
430  }
431
432}
433
434package android.nearby {
435
436  public final class NearbyFrameworkInitializer {
437    method public static void registerServiceWrappers();
438  }
439
440}
441
442package android.net {
443
444  public final class ConnectivityFrameworkInitializer {
445    method public static void registerServiceWrappers();
446  }
447
448  public final class ConnectivityFrameworkInitializerTiramisu {
449    method public static void registerServiceWrappers();
450  }
451
452  public class ConnectivityManager {
453    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void addUidToMeteredNetworkAllowList(int);
454    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void addUidToMeteredNetworkDenyList(int);
455    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void factoryReset();
456    method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public java.util.List<android.net.NetworkStateSnapshot> getAllNetworkStateSnapshots();
457    method @Nullable public android.net.ProxyInfo getGlobalProxy();
458    method @NonNull public static android.util.Range<java.lang.Integer> getIpSecNetIdRange();
459    method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public android.net.LinkProperties getRedactedLinkPropertiesForPackage(@NonNull android.net.LinkProperties, int, @NonNull String);
460    method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public android.net.NetworkCapabilities getRedactedNetworkCapabilitiesForPackage(@NonNull android.net.NetworkCapabilities, int, @NonNull String);
461    method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public boolean isUidNetworkingBlocked(int, boolean);
462    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerDefaultNetworkCallbackForUid(int, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
463    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS}) public void registerSystemDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
464    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void removeUidFromMeteredNetworkAllowList(int);
465    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void removeUidFromMeteredNetworkDenyList(int);
466    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void replaceFirewallChain(int, @NonNull int[]);
467    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void requestBackgroundNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
468    method @Deprecated public boolean requestRouteToHostAddress(int, java.net.InetAddress);
469    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAcceptPartialConnectivity(@NonNull android.net.Network, boolean, boolean);
470    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAcceptUnvalidated(@NonNull android.net.Network, boolean, boolean);
471    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAvoidUnvalidated(@NonNull android.net.Network);
472    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setDataSaverEnabled(boolean);
473    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setFirewallChainEnabled(int, boolean);
474    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(@Nullable android.net.ProxyInfo);
475    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setLegacyLockdownVpnEnabled(boolean);
476    method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreference(@NonNull android.os.UserHandle, int, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
477    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreferences(@NonNull android.os.UserHandle, @NonNull java.util.List<android.net.ProfileNetworkPreference>, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
478    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setRequireVpnForUids(boolean, @NonNull java.util.Collection<android.util.Range<java.lang.Integer>>);
479    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setUidFirewallRule(int, int, int);
480    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setVpnDefaultForUids(@NonNull String, @NonNull java.util.Collection<android.util.Range<java.lang.Integer>>);
481    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_TEST_NETWORKS, android.Manifest.permission.NETWORK_STACK}) public void simulateDataStall(int, long, @NonNull android.net.Network, @NonNull android.os.PersistableBundle);
482    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void startCaptivePortalApp(@NonNull android.net.Network);
483    method public void systemReady();
484    field public static final String ACTION_CLEAR_DNS_CACHE = "android.net.action.CLEAR_DNS_CACHE";
485    field public static final String ACTION_PROMPT_LOST_VALIDATION = "android.net.action.PROMPT_LOST_VALIDATION";
486    field public static final String ACTION_PROMPT_PARTIAL_CONNECTIVITY = "android.net.action.PROMPT_PARTIAL_CONNECTIVITY";
487    field public static final String ACTION_PROMPT_UNVALIDATED = "android.net.action.PROMPT_UNVALIDATED";
488    field public static final int BLOCKED_METERED_REASON_ADMIN_DISABLED = 262144; // 0x40000
489    field public static final int BLOCKED_METERED_REASON_DATA_SAVER = 65536; // 0x10000
490    field public static final int BLOCKED_METERED_REASON_MASK = -65536; // 0xffff0000
491    field public static final int BLOCKED_METERED_REASON_USER_RESTRICTED = 131072; // 0x20000
492    field public static final int BLOCKED_REASON_APP_BACKGROUND = 64; // 0x40
493    field public static final int BLOCKED_REASON_APP_STANDBY = 4; // 0x4
494    field public static final int BLOCKED_REASON_BATTERY_SAVER = 1; // 0x1
495    field public static final int BLOCKED_REASON_DOZE = 2; // 0x2
496    field public static final int BLOCKED_REASON_LOCKDOWN_VPN = 16; // 0x10
497    field public static final int BLOCKED_REASON_LOW_POWER_STANDBY = 32; // 0x20
498    field public static final int BLOCKED_REASON_NONE = 0; // 0x0
499    field public static final int BLOCKED_REASON_RESTRICTED_MODE = 8; // 0x8
500    field public static final int FIREWALL_CHAIN_BACKGROUND = 6; // 0x6
501    field public static final int FIREWALL_CHAIN_DOZABLE = 1; // 0x1
502    field public static final int FIREWALL_CHAIN_LOW_POWER_STANDBY = 5; // 0x5
503    field public static final int FIREWALL_CHAIN_OEM_DENY_1 = 7; // 0x7
504    field public static final int FIREWALL_CHAIN_OEM_DENY_2 = 8; // 0x8
505    field public static final int FIREWALL_CHAIN_OEM_DENY_3 = 9; // 0x9
506    field public static final int FIREWALL_CHAIN_POWERSAVE = 3; // 0x3
507    field public static final int FIREWALL_CHAIN_RESTRICTED = 4; // 0x4
508    field public static final int FIREWALL_CHAIN_STANDBY = 2; // 0x2
509    field public static final int FIREWALL_RULE_ALLOW = 1; // 0x1
510    field public static final int FIREWALL_RULE_DEFAULT = 0; // 0x0
511    field public static final int FIREWALL_RULE_DENY = 2; // 0x2
512    field public static final int PROFILE_NETWORK_PREFERENCE_DEFAULT = 0; // 0x0
513    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE = 1; // 0x1
514    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE_BLOCKING = 3; // 0x3
515    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE_NO_FALLBACK = 2; // 0x2
516  }
517
518  public static class ConnectivityManager.NetworkCallback {
519    method public void onBlockedStatusChanged(@NonNull android.net.Network, int);
520  }
521
522  public class ConnectivitySettingsManager {
523    method public static void clearGlobalProxy(@NonNull android.content.Context);
524    method @Nullable public static String getCaptivePortalHttpUrl(@NonNull android.content.Context);
525    method public static int getCaptivePortalMode(@NonNull android.content.Context, int);
526    method @NonNull public static java.time.Duration getConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
527    method @NonNull public static android.util.Range<java.lang.Integer> getDnsResolverSampleRanges(@NonNull android.content.Context);
528    method @NonNull public static java.time.Duration getDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
529    method public static int getDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, int);
530    method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context);
531    method public static long getIngressRateLimitInBytesPerSecond(@NonNull android.content.Context);
532    method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
533    method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
534    method @NonNull public static java.util.Set<java.lang.Integer> getMobileDataPreferredUids(@NonNull android.content.Context);
535    method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context);
536    method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context);
537    method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int);
538    method @NonNull public static java.time.Duration getNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
539    method @NonNull public static String getPrivateDnsDefaultMode(@NonNull android.content.Context);
540    method @Nullable public static String getPrivateDnsHostname(@NonNull android.content.Context);
541    method public static int getPrivateDnsMode(@NonNull android.content.Context);
542    method @NonNull public static java.util.Set<java.lang.Integer> getUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context);
543    method public static boolean getWifiAlwaysRequested(@NonNull android.content.Context, boolean);
544    method @NonNull public static java.time.Duration getWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
545    method public static void setCaptivePortalHttpUrl(@NonNull android.content.Context, @Nullable String);
546    method public static void setCaptivePortalMode(@NonNull android.content.Context, int);
547    method public static void setConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
548    method public static void setDnsResolverSampleRanges(@NonNull android.content.Context, @NonNull android.util.Range<java.lang.Integer>);
549    method public static void setDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
550    method public static void setDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, @IntRange(from=0, to=100) int);
551    method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo);
552    method public static void setIngressRateLimitInBytesPerSecond(@NonNull android.content.Context, @IntRange(from=-1L, to=4294967295L) long);
553    method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
554    method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
555    method public static void setMobileDataPreferredUids(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
556    method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int);
557    method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String);
558    method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int);
559    method public static void setNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
560    method public static void setPrivateDnsDefaultMode(@NonNull android.content.Context, @NonNull int);
561    method public static void setPrivateDnsHostname(@NonNull android.content.Context, @Nullable String);
562    method public static void setPrivateDnsMode(@NonNull android.content.Context, int);
563    method public static void setUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
564    method public static void setWifiAlwaysRequested(@NonNull android.content.Context, boolean);
565    method public static void setWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
566    field public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; // 0x2
567    field public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; // 0x0
568    field public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; // 0x1
569    field public static final int NETWORK_AVOID_BAD_WIFI_AVOID = 2; // 0x2
570    field public static final int NETWORK_AVOID_BAD_WIFI_IGNORE = 0; // 0x0
571    field public static final int NETWORK_AVOID_BAD_WIFI_PROMPT = 1; // 0x1
572    field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1
573    field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2
574    field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3
575  }
576
577  public final class DhcpOption implements android.os.Parcelable {
578    ctor public DhcpOption(byte, @Nullable byte[]);
579    method public int describeContents();
580    method public byte getType();
581    method @Nullable public byte[] getValue();
582    method public void writeToParcel(@NonNull android.os.Parcel, int);
583    field @NonNull public static final android.os.Parcelable.Creator<android.net.DhcpOption> CREATOR;
584  }
585
586  public class EthernetManager {
587    method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void addEthernetStateListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
588    method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void addInterfaceStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.InterfaceStateListener);
589    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public java.util.List<java.lang.String> getInterfaceList();
590    method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void removeEthernetStateListener(@NonNull java.util.function.IntConsumer);
591    method public void removeInterfaceStateListener(@NonNull android.net.EthernetManager.InterfaceStateListener);
592    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setEthernetEnabled(boolean);
593    method public void setIncludeTestInterfaces(boolean);
594    field public static final int ETHERNET_STATE_DISABLED = 0; // 0x0
595    field public static final int ETHERNET_STATE_ENABLED = 1; // 0x1
596    field public static final int ROLE_CLIENT = 1; // 0x1
597    field public static final int ROLE_NONE = 0; // 0x0
598    field public static final int ROLE_SERVER = 2; // 0x2
599    field public static final int STATE_ABSENT = 0; // 0x0
600    field public static final int STATE_LINK_DOWN = 1; // 0x1
601    field public static final int STATE_LINK_UP = 2; // 0x2
602  }
603
604  public static interface EthernetManager.InterfaceStateListener {
605    method public void onInterfaceStateChanged(@NonNull String, int, int, @Nullable android.net.IpConfiguration);
606  }
607
608  public class IpSecManager {
609    field public static final int DIRECTION_FWD = 2; // 0x2
610  }
611
612  public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable {
613    method public int getResourceId();
614  }
615
616  public class LocalSocket implements java.io.Closeable {
617    ctor public LocalSocket(@NonNull java.io.FileDescriptor);
618  }
619
620  public final class NetworkAgentConfig implements android.os.Parcelable {
621    method @Nullable public String getSubscriberId();
622    method public boolean isBypassableVpn();
623    method public boolean isVpnValidationRequired();
624  }
625
626  public static final class NetworkAgentConfig.Builder {
627    method @NonNull public android.net.NetworkAgentConfig.Builder setBypassableVpn(boolean);
628    method @NonNull public android.net.NetworkAgentConfig.Builder setLocalRoutesExcludedForVpn(boolean);
629    method @NonNull public android.net.NetworkAgentConfig.Builder setSubscriberId(@Nullable String);
630    method @NonNull public android.net.NetworkAgentConfig.Builder setVpnRequiresValidation(boolean);
631  }
632
633  public final class NetworkCapabilities implements android.os.Parcelable {
634    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public java.util.Set<java.lang.Integer> getAllowedUids();
635    method @Nullable public java.util.Set<android.util.Range<java.lang.Integer>> getUids();
636    method public boolean hasForbiddenCapability(int);
637    field public static final long REDACT_ALL = -1L; // 0xffffffffffffffffL
638    field public static final long REDACT_FOR_ACCESS_FINE_LOCATION = 1L; // 0x1L
639    field public static final long REDACT_FOR_LOCAL_MAC_ADDRESS = 2L; // 0x2L
640    field public static final long REDACT_FOR_NETWORK_SETTINGS = 4L; // 0x4L
641    field public static final long REDACT_NONE = 0L; // 0x0L
642    field public static final int TRANSPORT_TEST = 7; // 0x7
643  }
644
645  public static final class NetworkCapabilities.Builder {
646    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setAllowedUids(@NonNull java.util.Set<java.lang.Integer>);
647    method @NonNull public android.net.NetworkCapabilities.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
648  }
649
650  public class NetworkIdentity {
651    method public int getOemManaged();
652    method public int getRatType();
653    method public int getSubId();
654    method @Nullable public String getSubscriberId();
655    method public int getType();
656    method @Nullable public String getWifiNetworkKey();
657    method public boolean isDefaultNetwork();
658    method public boolean isMetered();
659    method public boolean isRoaming();
660  }
661
662  public static final class NetworkIdentity.Builder {
663    ctor public NetworkIdentity.Builder();
664    method @NonNull public android.net.NetworkIdentity build();
665    method @NonNull public android.net.NetworkIdentity.Builder clearRatType();
666    method @NonNull public android.net.NetworkIdentity.Builder setDefaultNetwork(boolean);
667    method @NonNull public android.net.NetworkIdentity.Builder setMetered(boolean);
668    method @NonNull public android.net.NetworkIdentity.Builder setNetworkStateSnapshot(@NonNull android.net.NetworkStateSnapshot);
669    method @NonNull public android.net.NetworkIdentity.Builder setOemManaged(int);
670    method @NonNull public android.net.NetworkIdentity.Builder setRatType(int);
671    method @NonNull public android.net.NetworkIdentity.Builder setRoaming(boolean);
672    method @NonNull public android.net.NetworkIdentity.Builder setSubId(int);
673    method @NonNull public android.net.NetworkIdentity.Builder setSubscriberId(@Nullable String);
674    method @NonNull public android.net.NetworkIdentity.Builder setType(int);
675    method @NonNull public android.net.NetworkIdentity.Builder setWifiNetworkKey(@Nullable String);
676  }
677
678  public class NetworkPolicyManager {
679    method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public int getMultipathPreference(@NonNull android.net.Network);
680    method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public int getRestrictBackgroundStatus(int);
681    method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.telephony.SubscriptionPlan getSubscriptionPlan(@NonNull android.net.NetworkTemplate);
682    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidNetworkingBlocked(int, boolean);
683    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidRestrictedOnMeteredNetworks(int);
684    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyStatsProviderLimitReached();
685    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyStatsProviderWarningReached();
686    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void registerNetworkPolicyCallback(@Nullable java.util.concurrent.Executor, @NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback);
687    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void unregisterNetworkPolicyCallback(@NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback);
688  }
689
690  public static interface NetworkPolicyManager.NetworkPolicyCallback {
691    method public default void onUidBlockedReasonChanged(int, int);
692  }
693
694  public class NetworkRequest implements android.os.Parcelable {
695    method @NonNull public int[] getEnterpriseIds();
696    method @NonNull public int[] getForbiddenCapabilities();
697    method public boolean hasEnterpriseId(int);
698    method public boolean hasForbiddenCapability(int);
699  }
700
701  public static class NetworkRequest.Builder {
702    method @NonNull public android.net.NetworkRequest.Builder addForbiddenCapability(int);
703    method @NonNull public android.net.NetworkRequest.Builder removeForbiddenCapability(int);
704    method @NonNull public android.net.NetworkRequest.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
705  }
706
707  public final class NetworkStateSnapshot implements android.os.Parcelable {
708    ctor public NetworkStateSnapshot(@NonNull android.net.Network, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, @Nullable String, int);
709    method public int describeContents();
710    method public int getLegacyType();
711    method @NonNull public android.net.LinkProperties getLinkProperties();
712    method @NonNull public android.net.Network getNetwork();
713    method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
714    method public int getSubId();
715    method @Deprecated @Nullable public String getSubscriberId();
716    method public void writeToParcel(@NonNull android.os.Parcel, int);
717    field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStateSnapshot> CREATOR;
718  }
719
720  public class NetworkStatsCollection {
721    method @NonNull public java.util.Map<android.net.NetworkStatsCollection.Key,android.net.NetworkStatsHistory> getEntries();
722  }
723
724  public static final class NetworkStatsCollection.Builder {
725    ctor public NetworkStatsCollection.Builder(long);
726    method @NonNull public android.net.NetworkStatsCollection.Builder addEntry(@NonNull android.net.NetworkStatsCollection.Key, @NonNull android.net.NetworkStatsHistory);
727    method @NonNull public android.net.NetworkStatsCollection build();
728  }
729
730  public static final class NetworkStatsCollection.Key {
731    ctor public NetworkStatsCollection.Key(@NonNull java.util.Set<android.net.NetworkIdentity>, int, int, int);
732  }
733
734  public final class NetworkStatsHistory implements android.os.Parcelable {
735    method public int describeContents();
736    method @NonNull public java.util.List<android.net.NetworkStatsHistory.Entry> getEntries();
737    method public void writeToParcel(@NonNull android.os.Parcel, int);
738    field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStatsHistory> CREATOR;
739  }
740
741  public static final class NetworkStatsHistory.Builder {
742    ctor public NetworkStatsHistory.Builder(long, int);
743    method @NonNull public android.net.NetworkStatsHistory.Builder addEntry(@NonNull android.net.NetworkStatsHistory.Entry);
744    method @NonNull public android.net.NetworkStatsHistory build();
745  }
746
747  public static final class NetworkStatsHistory.Entry {
748    ctor public NetworkStatsHistory.Entry(long, long, long, long, long, long, long);
749    method public long getActiveTime();
750    method public long getBucketStart();
751    method public long getOperations();
752    method public long getRxBytes();
753    method public long getRxPackets();
754    method public long getTxBytes();
755    method public long getTxPackets();
756  }
757
758  public final class NetworkTemplate implements android.os.Parcelable {
759    method public int describeContents();
760    method public int getDefaultNetworkStatus();
761    method public int getMatchRule();
762    method public int getMeteredness();
763    method public int getOemManaged();
764    method public int getRatType();
765    method public int getRoaming();
766    method @NonNull public java.util.Set<java.lang.String> getSubscriberIds();
767    method @NonNull public java.util.Set<java.lang.String> getWifiNetworkKeys();
768    method public boolean matches(@NonNull android.net.NetworkIdentity);
769    method public void writeToParcel(@NonNull android.os.Parcel, int);
770    field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkTemplate> CREATOR;
771    field public static final int MATCH_BLUETOOTH = 8; // 0x8
772    field public static final int MATCH_CARRIER = 10; // 0xa
773    field public static final int MATCH_ETHERNET = 5; // 0x5
774    field public static final int MATCH_MOBILE = 1; // 0x1
775    field public static final int MATCH_PROXY = 9; // 0x9
776    field public static final int MATCH_WIFI = 4; // 0x4
777    field public static final int NETWORK_TYPE_ALL = -1; // 0xffffffff
778    field public static final int OEM_MANAGED_ALL = -1; // 0xffffffff
779    field public static final int OEM_MANAGED_NO = 0; // 0x0
780    field public static final int OEM_MANAGED_PAID = 1; // 0x1
781    field public static final int OEM_MANAGED_PRIVATE = 2; // 0x2
782    field public static final int OEM_MANAGED_YES = -2; // 0xfffffffe
783  }
784
785  public static final class NetworkTemplate.Builder {
786    ctor public NetworkTemplate.Builder(int);
787    method @NonNull public android.net.NetworkTemplate build();
788    method @NonNull public android.net.NetworkTemplate.Builder setDefaultNetworkStatus(int);
789    method @NonNull public android.net.NetworkTemplate.Builder setMeteredness(int);
790    method @NonNull public android.net.NetworkTemplate.Builder setOemManaged(int);
791    method @NonNull public android.net.NetworkTemplate.Builder setRatType(int);
792    method @NonNull public android.net.NetworkTemplate.Builder setRoaming(int);
793    method @NonNull public android.net.NetworkTemplate.Builder setSubscriberIds(@NonNull java.util.Set<java.lang.String>);
794    method @NonNull public android.net.NetworkTemplate.Builder setWifiNetworkKeys(@NonNull java.util.Set<java.lang.String>);
795  }
796
797  public class NetworkWatchlistManager {
798    method @Nullable public byte[] getWatchlistConfigHash();
799  }
800
801  public class PacProxyManager {
802    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void addPacProxyInstalledListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.PacProxyManager.PacProxyInstalledListener);
803    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void removePacProxyInstalledListener(@NonNull android.net.PacProxyManager.PacProxyInstalledListener);
804    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setCurrentProxyScriptUrl(@Nullable android.net.ProxyInfo);
805  }
806
807  public static interface PacProxyManager.PacProxyInstalledListener {
808    method public void onPacProxyInstalled(@Nullable android.net.Network, @NonNull android.net.ProxyInfo);
809  }
810
811  public final class ProfileNetworkPreference implements android.os.Parcelable {
812    method public int describeContents();
813    method @NonNull public int[] getExcludedUids();
814    method @NonNull public int[] getIncludedUids();
815    method public int getPreference();
816    method public int getPreferenceEnterpriseId();
817    method public void writeToParcel(@NonNull android.os.Parcel, int);
818    field @NonNull public static final android.os.Parcelable.Creator<android.net.ProfileNetworkPreference> CREATOR;
819  }
820
821  public static final class ProfileNetworkPreference.Builder {
822    ctor public ProfileNetworkPreference.Builder();
823    method @NonNull public android.net.ProfileNetworkPreference build();
824    method @NonNull public android.net.ProfileNetworkPreference.Builder setExcludedUids(@NonNull int[]);
825    method @NonNull public android.net.ProfileNetworkPreference.Builder setIncludedUids(@NonNull int[]);
826    method @NonNull public android.net.ProfileNetworkPreference.Builder setPreference(int);
827    method @NonNull public android.net.ProfileNetworkPreference.Builder setPreferenceEnterpriseId(int);
828  }
829
830  public final class Proxy {
831    method public static void setHttpProxyConfiguration(@Nullable android.net.ProxyInfo);
832  }
833
834  public final class TestNetworkInterface implements android.os.Parcelable {
835    ctor public TestNetworkInterface(@NonNull android.os.ParcelFileDescriptor, @NonNull String);
836    method public int describeContents();
837    method @NonNull public android.os.ParcelFileDescriptor getFileDescriptor();
838    method @NonNull public String getInterfaceName();
839    method @Nullable public android.net.MacAddress getMacAddress();
840    method public int getMtu();
841    method public void writeToParcel(@NonNull android.os.Parcel, int);
842    field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkInterface> CREATOR;
843  }
844
845  public class TestNetworkManager {
846    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTapInterface();
847    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTunInterface(@NonNull java.util.Collection<android.net.LinkAddress>);
848    method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void setupTestNetwork(@NonNull String, @NonNull android.os.IBinder);
849    method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void teardownTestNetwork(@NonNull android.net.Network);
850    field public static final String TEST_TAP_PREFIX = "testtap";
851  }
852
853  public final class TestNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
854    ctor public TestNetworkSpecifier(@NonNull String);
855    method public int describeContents();
856    method @Nullable public String getInterfaceName();
857    method public void writeToParcel(@NonNull android.os.Parcel, int);
858    field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkSpecifier> CREATOR;
859  }
860
861  public final class TetheringConstants {
862    field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType";
863    field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback";
864    field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType";
865    field public static final String EXTRA_RUN_PROVISION = "extraRunProvision";
866    field public static final String EXTRA_SET_ALARM = "extraSetAlarm";
867  }
868
869  public class TetheringManager {
870    ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier<android.os.IBinder>);
871    method public int getLastTetherError(@NonNull String);
872    method @NonNull public String[] getTetherableBluetoothRegexs();
873    method @NonNull public String[] getTetherableIfaces();
874    method @NonNull public String[] getTetherableUsbRegexs();
875    method @NonNull public String[] getTetherableWifiRegexs();
876    method @NonNull public String[] getTetheredIfaces();
877    method @NonNull public String[] getTetheringErroredIfaces();
878    method public boolean isTetheringSupported();
879    method public boolean isTetheringSupported(@NonNull String);
880    method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean);
881    method @Deprecated public int setUsbTethering(boolean);
882    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);
883    method @Deprecated public int tether(@NonNull String);
884    method @Deprecated public int untether(@NonNull String);
885  }
886
887  public static interface TetheringManager.TetheredInterfaceCallback {
888    method public void onAvailable(@NonNull String);
889    method public void onUnavailable();
890  }
891
892  public static interface TetheringManager.TetheredInterfaceRequest {
893    method public void release();
894  }
895
896  public static interface TetheringManager.TetheringEventCallback {
897    method @Deprecated public default void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps);
898  }
899
900  @Deprecated public static class TetheringManager.TetheringInterfaceRegexps {
901    method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs();
902    method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs();
903    method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs();
904  }
905
906  public class TrafficStats {
907    method public static void attachSocketTagger();
908    method public static void init(@NonNull android.content.Context);
909    method public static void setThreadStatsTagDownload();
910  }
911
912  public interface TransportInfo {
913    method public default long getApplicableRedactions();
914    method @NonNull public default android.net.TransportInfo makeCopy(long);
915  }
916
917  public final class UnderlyingNetworkInfo implements android.os.Parcelable {
918    ctor public UnderlyingNetworkInfo(int, @NonNull String, @NonNull java.util.List<java.lang.String>);
919    method public int describeContents();
920    method @NonNull public String getInterface();
921    method public int getOwnerUid();
922    method @NonNull public java.util.List<java.lang.String> getUnderlyingInterfaces();
923    method public void writeToParcel(@NonNull android.os.Parcel, int);
924    field @NonNull public static final android.os.Parcelable.Creator<android.net.UnderlyingNetworkInfo> CREATOR;
925  }
926
927  public class VpnManager {
928    field public static final int TYPE_VPN_LEGACY = 3; // 0x3
929    field public static final int TYPE_VPN_NONE = -1; // 0xffffffff
930    field public static final int TYPE_VPN_OEM = 4; // 0x4
931    field public static final int TYPE_VPN_PLATFORM = 2; // 0x2
932    field public static final int TYPE_VPN_SERVICE = 1; // 0x1
933  }
934
935  public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
936    ctor @Deprecated public VpnTransportInfo(int, @Nullable String);
937    method public long getApplicableRedactions();
938    method @Nullable public String getSessionId();
939    method @NonNull public android.net.VpnTransportInfo makeCopy(long);
940  }
941
942}
943
944package android.net.ipsec.ike {
945
946  public final class IkeSession implements java.lang.AutoCloseable {
947    method public void setNetwork(@NonNull android.net.Network, int, int, @IntRange(from=0xa, to=0xe10) int);
948    method public void setUnderpinnedNetwork(@NonNull android.net.Network);
949  }
950
951  public final class IkeSessionParams {
952    method public int getEncapType();
953    method public int getIpVersion();
954    field public static final int ESP_ENCAP_TYPE_AUTO = 0; // 0x0
955    field public static final int ESP_ENCAP_TYPE_NONE = -1; // 0xffffffff
956    field public static final int ESP_ENCAP_TYPE_UDP = 17; // 0x11
957    field public static final int ESP_IP_VERSION_AUTO = 0; // 0x0
958    field public static final int ESP_IP_VERSION_IPV4 = 4; // 0x4
959    field public static final int ESP_IP_VERSION_IPV6 = 6; // 0x6
960    field public static final int NATT_KEEPALIVE_INTERVAL_AUTO = -1; // 0xffffffff
961  }
962
963  public static final class IkeSessionParams.Builder {
964    method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setEncapType(int);
965    method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setIpVersion(int);
966  }
967
968}
969
970package android.net.netstats {
971
972  public class NetworkStatsDataMigrationUtils {
973    method @NonNull public static android.net.NetworkStatsCollection readPlatformCollection(@NonNull String, long) throws java.io.IOException;
974    field public static final String PREFIX_UID = "uid";
975    field public static final String PREFIX_UID_TAG = "uid_tag";
976    field public static final String PREFIX_XT = "xt";
977  }
978
979}
980
981package android.net.wifi {
982
983  public class WifiManager {
984    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void addCustomDhcpOptions(@NonNull android.net.wifi.WifiSsid, @NonNull byte[], @NonNull java.util.List<android.net.DhcpOption>);
985    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void removeCustomDhcpOptions(@NonNull android.net.wifi.WifiSsid, @NonNull byte[]);
986  }
987
988}
989
990package android.nfc {
991
992  public class NfcFrameworkInitializer {
993    method public static void registerServiceWrappers();
994    method public static void setNfcServiceManager(@NonNull android.nfc.NfcServiceManager);
995  }
996
997  public class NfcServiceManager {
998    method @NonNull public android.nfc.NfcServiceManager.ServiceRegisterer getNfcManagerServiceRegisterer();
999  }
1000
1001  public static class NfcServiceManager.ServiceNotFoundException extends java.lang.Exception {
1002    ctor public NfcServiceManager.ServiceNotFoundException(@NonNull String);
1003  }
1004
1005  public static final class NfcServiceManager.ServiceRegisterer {
1006    method @Nullable public android.os.IBinder get();
1007    method @NonNull public android.os.IBinder getOrThrow() throws android.nfc.NfcServiceManager.ServiceNotFoundException;
1008    method public void register(@NonNull android.os.IBinder);
1009    method @Nullable public android.os.IBinder tryGet();
1010  }
1011
1012}
1013
1014package android.ondevicepersonalization {
1015
1016  public class OnDevicePersonalizationFrameworkInitializer {
1017    method public static void registerServiceWrappers();
1018  }
1019
1020}
1021
1022package android.os {
1023
1024  public class ArtModuleServiceManager {
1025    method @NonNull public android.os.ArtModuleServiceManager.ServiceRegisterer getArtdPreRebootServiceRegisterer();
1026    method @NonNull public android.os.ArtModuleServiceManager.ServiceRegisterer getArtdServiceRegisterer();
1027    method @NonNull public android.os.ArtModuleServiceManager.ServiceRegisterer getDexoptChrootSetupServiceRegisterer();
1028  }
1029
1030  public static final class ArtModuleServiceManager.ServiceRegisterer {
1031    method @Nullable public android.os.IBinder waitForService();
1032  }
1033
1034  public final class BatteryStatsManager {
1035    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void reportNetworkInterfaceForTransports(@NonNull String, @NonNull int[]) throws java.lang.RuntimeException;
1036  }
1037
1038  public class BluetoothServiceManager {
1039    method @NonNull public android.os.BluetoothServiceManager.ServiceRegisterer getBluetoothManagerServiceRegisterer();
1040  }
1041
1042  public static class BluetoothServiceManager.ServiceNotFoundException extends java.lang.Exception {
1043    ctor public BluetoothServiceManager.ServiceNotFoundException(@NonNull String);
1044  }
1045
1046  public static final class BluetoothServiceManager.ServiceRegisterer {
1047    method @Nullable public android.os.IBinder get();
1048    method @NonNull public android.os.IBinder getOrThrow() throws android.os.BluetoothServiceManager.ServiceNotFoundException;
1049    method public void register(@NonNull android.os.IBinder);
1050    method @Nullable public android.os.IBinder tryGet();
1051  }
1052
1053  public class Build {
1054    method public static boolean isDebuggable();
1055  }
1056
1057  public static class Build.VERSION {
1058    field public static final int DEVICE_INITIAL_SDK_INT;
1059  }
1060
1061  public class IpcDataCache<Query, Result> {
1062    ctor public IpcDataCache(int, @NonNull String, @NonNull String, @NonNull String, @NonNull android.os.IpcDataCache.QueryHandler<Query,Result>);
1063    method public void disableForCurrentProcess();
1064    method public static void disableForCurrentProcess(@NonNull String);
1065    method public void invalidateCache();
1066    method public static void invalidateCache(@NonNull String, @NonNull String);
1067    method @Nullable public Result query(@NonNull Query);
1068    field public static final String MODULE_BLUETOOTH = "bluetooth";
1069  }
1070
1071  public abstract static class IpcDataCache.QueryHandler<Q, R> {
1072    ctor public IpcDataCache.QueryHandler();
1073    method @Nullable public abstract R apply(@NonNull Q);
1074    method public boolean shouldBypassCache(@NonNull Q);
1075  }
1076
1077  public class Process {
1078    method public static final int toSdkSandboxUid(int);
1079    field public static final int NFC_UID = 1027; // 0x403
1080    field public static final int VPN_UID = 1016; // 0x3f8
1081  }
1082
1083  public class ProfilingFrameworkInitializer {
1084    method public static void registerServiceWrappers();
1085    method public static void setProfilingServiceManager(@NonNull android.os.ProfilingServiceManager);
1086  }
1087
1088  public class ProfilingServiceManager {
1089    method @NonNull public android.os.ProfilingServiceManager.ServiceRegisterer getProfilingServiceRegisterer();
1090  }
1091
1092  public static class ProfilingServiceManager.ServiceNotFoundException extends java.lang.Exception {
1093    ctor public ProfilingServiceManager.ServiceNotFoundException(@NonNull String);
1094  }
1095
1096  public static final class ProfilingServiceManager.ServiceRegisterer {
1097    method @Nullable public android.os.IBinder get();
1098    method @Nullable public android.os.IBinder getOrThrow() throws android.os.ProfilingServiceManager.ServiceNotFoundException;
1099  }
1100
1101  public final class ServiceManager {
1102    method @NonNull public static String[] getDeclaredInstances(@NonNull String);
1103    method public static boolean isDeclared(@NonNull String);
1104    method @Nullable public static android.os.IBinder waitForDeclaredService(@NonNull String);
1105  }
1106
1107  public class StatsFrameworkInitializer {
1108    method public static void registerServiceWrappers();
1109    method public static void setStatsServiceManager(@NonNull android.os.StatsServiceManager);
1110  }
1111
1112  public class StatsServiceManager {
1113    method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsCompanionServiceRegisterer();
1114    method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsManagerServiceRegisterer();
1115    method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsdServiceRegisterer();
1116  }
1117
1118  public static class StatsServiceManager.ServiceNotFoundException extends java.lang.Exception {
1119    ctor public StatsServiceManager.ServiceNotFoundException(@NonNull String);
1120  }
1121
1122  public static final class StatsServiceManager.ServiceRegisterer {
1123    method @Nullable public android.os.IBinder get();
1124    method @Nullable public android.os.IBinder getOrThrow() throws android.os.StatsServiceManager.ServiceNotFoundException;
1125  }
1126
1127  public final class StrictMode {
1128    method public static void noteUntaggedSocket();
1129  }
1130
1131  public class SystemConfigManager {
1132    method @NonNull public java.util.List<android.content.ComponentName> getEnabledComponentOverrides(@NonNull String);
1133    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ENHANCED_CONFIRMATION_STATES) public java.util.Set<android.content.pm.SignedPackage> getEnhancedConfirmationTrustedInstallers();
1134    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ENHANCED_CONFIRMATION_STATES) public java.util.Set<android.content.pm.SignedPackage> getEnhancedConfirmationTrustedPackages();
1135  }
1136
1137  public final class Trace {
1138    method public static void asyncTraceBegin(long, @NonNull String, int);
1139    method public static void asyncTraceEnd(long, @NonNull String, int);
1140    method public static boolean isTagEnabled(long);
1141    method public static void traceBegin(long, @NonNull String);
1142    method public static void traceCounter(long, @NonNull String, int);
1143    method public static void traceEnd(long);
1144    field public static final long TRACE_TAG_NETWORK = 2097152L; // 0x200000L
1145  }
1146
1147}
1148
1149package android.os.storage {
1150
1151  public class StorageManager {
1152    method public long computeStorageCacheBytes(@NonNull java.io.File);
1153    method @Nullable public String getCloudMediaProvider();
1154    method public void notifyAppIoBlocked(@NonNull java.util.UUID, int, int, int);
1155    method public void notifyAppIoResumed(@NonNull java.util.UUID, int, int, int);
1156    method public void setCloudMediaProvider(@Nullable String);
1157    field public static final int APP_IO_BLOCKED_REASON_TRANSCODING = 1; // 0x1
1158    field public static final int APP_IO_BLOCKED_REASON_UNKNOWN = 0; // 0x0
1159  }
1160
1161}
1162
1163package android.provider {
1164
1165  public static final class ContactsContract.RawContactsEntity implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.RawContactsColumns {
1166    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public static java.util.Map<java.lang.String,java.util.List<android.content.ContentValues>> queryRawContactEntity(@NonNull android.content.ContentResolver, long);
1167  }
1168
1169  public final class DeviceConfig {
1170    field public static final String NAMESPACE_ACTIVITY_MANAGER_COMPONENT_ALIAS = "activity_manager_ca";
1171    field public static final String NAMESPACE_ALARM_MANAGER = "alarm_manager";
1172    field public static final String NAMESPACE_APP_CLONING = "app_cloning";
1173    field public static final String NAMESPACE_APP_STANDBY = "app_standby";
1174    field public static final String NAMESPACE_ARC_APP_COMPAT = "arc_app_compat";
1175    field public static final String NAMESPACE_BATTERY_STATS = "battery_stats";
1176    field public static final String NAMESPACE_CONFIGURATION = "configuration";
1177    field public static final String NAMESPACE_CONNECTIVITY_THERMAL_POWER_MANAGER = "connectivity_thermal_power_manager";
1178    field public static final String NAMESPACE_CONTACTS_PROVIDER = "contacts_provider";
1179    field public static final String NAMESPACE_DEVICE_IDLE = "device_idle";
1180    field public static final String NAMESPACE_DEVICE_POLICY_MANAGER = "device_policy_manager";
1181    field public static final String NAMESPACE_GAME_OVERLAY = "game_overlay";
1182    field public static final String NAMESPACE_INTELLIGENCE_CONTENT_SUGGESTIONS = "intelligence_content_suggestions";
1183    field public static final String NAMESPACE_INTERACTION_JANK_MONITOR = "interaction_jank_monitor";
1184    field public static final String NAMESPACE_LATENCY_TRACKER = "latency_tracker";
1185    field public static final String NAMESPACE_MEMORY_SAFETY_NATIVE = "memory_safety_native";
1186    field public static final String NAMESPACE_MEMORY_SAFETY_NATIVE_BOOT = "memory_safety_native_boot";
1187    field public static final String NAMESPACE_MGLRU_NATIVE = "mglru_native";
1188    field public static final String NAMESPACE_REMOTE_KEY_PROVISIONING_NATIVE = "remote_key_provisioning_native";
1189    field public static final String NAMESPACE_ROTATION_RESOLVER = "rotation_resolver";
1190    field public static final String NAMESPACE_SETTINGS_STATS = "settings_stats";
1191    field public static final String NAMESPACE_SETTINGS_UI = "settings_ui";
1192    field public static final String NAMESPACE_TARE = "tare";
1193    field public static final String NAMESPACE_TETHERING_NATIVE = "tethering_u_or_later_native";
1194    field public static final String NAMESPACE_VENDOR_SYSTEM_NATIVE = "vendor_system_native";
1195    field public static final String NAMESPACE_VENDOR_SYSTEM_NATIVE_BOOT = "vendor_system_native_boot";
1196    field public static final String NAMESPACE_VIRTUALIZATION_FRAMEWORK_NATIVE = "virtualization_framework_native";
1197    field public static final String NAMESPACE_VOICE_INTERACTION = "voice_interaction";
1198    field public static final String NAMESPACE_WEAR = "wear";
1199    field public static final String NAMESPACE_WIDGET = "widget";
1200    field public static final String NAMESPACE_WINDOW_MANAGER = "window_manager";
1201  }
1202
1203  public static class DeviceConfig.Properties {
1204    ctor public DeviceConfig.Properties(@NonNull String, @Nullable java.util.Map<java.lang.String,java.lang.String>);
1205  }
1206
1207  public class DeviceConfigInitializer {
1208    method @Nullable public static android.provider.DeviceConfigServiceManager getDeviceConfigServiceManager();
1209    method public static void setDeviceConfigServiceManager(@NonNull android.provider.DeviceConfigServiceManager);
1210  }
1211
1212  public class DeviceConfigServiceManager {
1213    method @NonNull public android.provider.DeviceConfigServiceManager.ServiceRegisterer getDeviceConfigUpdatableServiceRegisterer();
1214  }
1215
1216  public static class DeviceConfigServiceManager.ServiceNotFoundException extends java.lang.Exception {
1217  }
1218
1219  public static final class DeviceConfigServiceManager.ServiceRegisterer {
1220    method @Nullable public android.os.IBinder get();
1221    method @NonNull public android.os.IBinder getOrThrow() throws android.provider.DeviceConfigServiceManager.ServiceNotFoundException;
1222    method public void register(@NonNull android.os.IBinder);
1223    method @Nullable public android.os.IBinder tryGet();
1224  }
1225
1226  public final class DeviceConfigShellCommandHandler {
1227    method public static int handleShellCommand(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull String[]);
1228  }
1229
1230  public final class Settings {
1231    field public static final int RESET_MODE_PACKAGE_DEFAULTS = 1; // 0x1
1232    field public static final int RESET_MODE_TRUSTED_DEFAULTS = 4; // 0x4
1233    field public static final int RESET_MODE_UNTRUSTED_CHANGES = 3; // 0x3
1234    field public static final int RESET_MODE_UNTRUSTED_DEFAULTS = 2; // 0x2
1235  }
1236
1237  public static final class Settings.Config extends android.provider.Settings.NameValueTable {
1238    method @RequiresPermission(android.Manifest.permission.MONITOR_DEVICE_CONFIG_ACCESS) public static void clearMonitorCallback(@NonNull android.content.ContentResolver);
1239    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean deleteString(@NonNull String, @NonNull String);
1240    method @NonNull public static java.util.Map<java.lang.String,java.lang.String> getAllStrings();
1241    method @Nullable @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getString(@NonNull String);
1242    method @NonNull @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static java.util.Map<java.lang.String,java.lang.String> getStrings(@NonNull String, @NonNull java.util.List<java.lang.String>);
1243    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static int getSyncDisabledMode();
1244    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean putString(@NonNull String, @NonNull String, @Nullable String, boolean);
1245    method public static void registerContentObserver(@Nullable String, boolean, @NonNull android.database.ContentObserver);
1246    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void resetToDefaults(int, @Nullable String);
1247    method @RequiresPermission(android.Manifest.permission.MONITOR_DEVICE_CONFIG_ACCESS) public static void setMonitorCallback(@NonNull android.content.ContentResolver, @NonNull java.util.concurrent.Executor, @NonNull android.provider.DeviceConfig.MonitorCallback);
1248    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setStrings(@NonNull String, @NonNull java.util.Map<java.lang.String,java.lang.String>) throws android.provider.DeviceConfig.BadConfigException;
1249    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void setSyncDisabledMode(int);
1250    method public static void unregisterContentObserver(@NonNull android.database.ContentObserver);
1251  }
1252
1253  public static final class Settings.Global extends android.provider.Settings.NameValueTable {
1254    field public static final String BLE_SCAN_ALWAYS_AVAILABLE = "ble_scan_always_enabled";
1255    field public static final String BLE_SCAN_BACKGROUND_MODE = "ble_scan_background_mode";
1256    field public static final String BLE_SCAN_BALANCED_INTERVAL_MS = "ble_scan_balanced_interval_ms";
1257    field public static final String BLE_SCAN_BALANCED_WINDOW_MS = "ble_scan_balanced_window_ms";
1258    field public static final String BLE_SCAN_LOW_LATENCY_INTERVAL_MS = "ble_scan_low_latency_interval_ms";
1259    field public static final String BLE_SCAN_LOW_LATENCY_WINDOW_MS = "ble_scan_low_latency_window_ms";
1260    field public static final String BLE_SCAN_LOW_POWER_INTERVAL_MS = "ble_scan_low_power_interval_ms";
1261    field public static final String BLE_SCAN_LOW_POWER_WINDOW_MS = "ble_scan_low_power_window_ms";
1262    field public static final String BLUETOOTH_BTSNOOP_DEFAULT_MODE = "bluetooth_btsnoop_default_mode";
1263    field public static final String BLUETOOTH_CLASS_OF_DEVICE = "bluetooth_class_of_device";
1264    field public static final String BLUETOOTH_DISABLED_PROFILES = "bluetooth_disabled_profiles";
1265  }
1266
1267  public static final class Settings.Secure extends android.provider.Settings.NameValueTable {
1268    field public static final String BLUETOOTH_ADDRESS = "bluetooth_address";
1269    field public static final String BLUETOOTH_ADDR_VALID = "bluetooth_addr_valid";
1270    field public static final String BLUETOOTH_NAME = "bluetooth_name";
1271  }
1272
1273}
1274
1275package android.safetycenter {
1276
1277  public final class SafetyCenterFrameworkInitializer {
1278    method public static void registerServiceWrappers();
1279  }
1280
1281}
1282
1283package android.scheduling {
1284
1285  public class SchedulingFrameworkInitializer {
1286    method public static void registerServiceWrappers();
1287  }
1288
1289}
1290
1291package android.se.omapi {
1292
1293  public class SeFrameworkInitializer {
1294    method @Nullable public static android.se.omapi.SeServiceManager getSeServiceManager();
1295    method public static void setSeServiceManager(@NonNull android.se.omapi.SeServiceManager);
1296  }
1297
1298  public class SeServiceManager {
1299    method @NonNull public android.se.omapi.SeServiceManager.ServiceRegisterer getSeManagerServiceRegisterer();
1300  }
1301
1302  public static class SeServiceManager.ServiceNotFoundException extends java.lang.Exception {
1303    ctor public SeServiceManager.ServiceNotFoundException(@NonNull String);
1304  }
1305
1306  public static final class SeServiceManager.ServiceRegisterer {
1307    method @Nullable public android.os.IBinder get();
1308    method @NonNull public android.os.IBinder getOrThrow() throws android.se.omapi.SeServiceManager.ServiceNotFoundException;
1309    method public void register(@NonNull android.os.IBinder);
1310    method @Nullable public android.os.IBinder tryGet();
1311  }
1312
1313}
1314
1315package android.system {
1316
1317  public final class NetlinkSocketAddress extends java.net.SocketAddress {
1318    ctor public NetlinkSocketAddress(int, int);
1319    method public int getGroupsMask();
1320    method public int getPortId();
1321  }
1322
1323  public final class Os {
1324    method @Nullable public static android.system.StructCapUserData[] capget(@NonNull android.system.StructCapUserHeader) throws android.system.ErrnoException;
1325    method public static void capset(@NonNull android.system.StructCapUserHeader, @NonNull android.system.StructCapUserData[]) throws android.system.ErrnoException;
1326    method public static int getpgid(int) throws android.system.ErrnoException;
1327    method @Nullable public static android.system.StructRlimit getrlimit(int) throws android.system.ErrnoException;
1328    method public static int getsockoptInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
1329    method @Nullable public static android.system.StructLinger getsockoptLinger(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
1330    method public static int ioctlInt(@NonNull java.io.FileDescriptor, int) throws android.system.ErrnoException;
1331    method @Nullable public static java.io.FileDescriptor[] pipe2(int) throws android.system.ErrnoException;
1332    method @Nullable public static String realpath(@Nullable String) throws android.system.ErrnoException;
1333    method public static void setpgid(int, int) throws android.system.ErrnoException;
1334    method public static void setregid(int, int) throws android.system.ErrnoException;
1335    method public static void setreuid(int, int) throws android.system.ErrnoException;
1336    method public static void setsockoptIfreq(@NonNull java.io.FileDescriptor, int, int, @Nullable String) throws android.system.ErrnoException;
1337    method public static void setsockoptLinger(@NonNull java.io.FileDescriptor, int, int, @NonNull android.system.StructLinger) throws android.system.ErrnoException;
1338    method public static long splice(@NonNull java.io.FileDescriptor, @Nullable android.system.Int64Ref, @NonNull java.io.FileDescriptor, @Nullable android.system.Int64Ref, long, int) throws android.system.ErrnoException;
1339    method public static void unlink(@Nullable String) throws android.system.ErrnoException;
1340  }
1341
1342  public final class OsConstants {
1343    method public static int CAP_TO_INDEX(int);
1344    method public static int CAP_TO_MASK(int);
1345    field public static final int ARPHRD_LOOPBACK;
1346    field public static final int EUSERS;
1347    field public static final int MAP_POPULATE;
1348    field public static final int O_DIRECT;
1349    field public static final int PR_CAP_AMBIENT;
1350    field public static final int PR_CAP_AMBIENT_RAISE;
1351    field public static final int RLIMIT_NOFILE;
1352    field public static final int RTMGRP_IPV4_IFADDR;
1353    field public static final int SPLICE_F_MORE;
1354    field public static final int SPLICE_F_MOVE;
1355    field public static final int TIOCOUTQ;
1356    field public static final int UDP_ENCAP;
1357    field public static final int UDP_ENCAP_ESPINUDP;
1358    field public static final int XATTR_CREATE;
1359    field public static final int XATTR_REPLACE;
1360    field public static final int _LINUX_CAPABILITY_VERSION_3;
1361  }
1362
1363  public final class PacketSocketAddress extends java.net.SocketAddress {
1364    ctor public PacketSocketAddress(int, int, byte[]);
1365  }
1366
1367  public final class StructCapUserData {
1368    ctor public StructCapUserData(int, int, int);
1369    field public final int effective;
1370    field public final int inheritable;
1371    field public final int permitted;
1372  }
1373
1374  public final class StructCapUserHeader {
1375    ctor public StructCapUserHeader(int, int);
1376  }
1377
1378  public final class StructLinger {
1379    ctor public StructLinger(int, int);
1380    method public boolean isOn();
1381    field public final int l_linger;
1382  }
1383
1384  public final class StructRlimit {
1385    field public final long rlim_cur;
1386  }
1387
1388  public final class UnixSocketAddress extends java.net.SocketAddress {
1389    method public static android.system.UnixSocketAddress createFileSystem(String);
1390  }
1391
1392}
1393
1394package android.system.virtualmachine {
1395
1396  public class VirtualizationFrameworkInitializer {
1397    method public static void registerServiceWrappers();
1398  }
1399
1400}
1401
1402package android.telecom {
1403
1404  public abstract class ConnectionService extends android.app.Service {
1405    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telecom.Connection onCreateUnknownConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest);
1406  }
1407
1408}
1409
1410package android.telephony {
1411
1412  public class CarrierConfigManager {
1413    field public static final String KEY_MIN_UDP_PORT_4500_NAT_TIMEOUT_SEC_INT = "min_udp_port_4500_nat_timeout_sec_int";
1414  }
1415
1416  public abstract class CellSignalStrength {
1417    method public static int getNumSignalStrengthLevels();
1418  }
1419
1420  public class SubscriptionManager {
1421    method public void addSubscriptionInfoRecord(@NonNull String, @Nullable String, int, int);
1422    method public void removeSubscriptionInfoRecord(@NonNull String, int);
1423  }
1424
1425  public class TelephonyManager {
1426    method @NonNull public static int[] getAllNetworkTypes();
1427  }
1428
1429}
1430
1431package android.util {
1432
1433  public class AtomicFile {
1434    ctor public AtomicFile(@NonNull java.io.File, @Nullable android.util.SystemConfigFileCommitEventLogger);
1435  }
1436
1437  public final class Log {
1438    method public static int logToRadioBuffer(int, @Nullable String, @Nullable String);
1439  }
1440
1441  public final class Slog {
1442    method public static int d(@Nullable String, @NonNull String);
1443    method public static int d(@Nullable String, @NonNull String, @Nullable Throwable);
1444    method public static int e(@Nullable String, @NonNull String);
1445    method public static int e(@Nullable String, @NonNull String, @Nullable Throwable);
1446    method public static int i(@Nullable String, @NonNull String);
1447    method public static int i(@Nullable String, @NonNull String, @Nullable Throwable);
1448    method public static int v(@Nullable String, @NonNull String);
1449    method public static int v(@Nullable String, @NonNull String, @Nullable Throwable);
1450    method public static int w(@Nullable String, @NonNull String);
1451    method public static int w(@Nullable String, @NonNull String, @Nullable Throwable);
1452    method public static int w(@Nullable String, @Nullable Throwable);
1453    method public static int wtf(@Nullable String, @NonNull String);
1454    method public static int wtf(@Nullable String, @NonNull String, @Nullable Throwable);
1455    method public static int wtf(@Nullable String, @Nullable Throwable);
1456    method public static void wtfQuiet(@Nullable String, @NonNull String);
1457    method public static int wtfStack(@Nullable String, @NonNull String);
1458  }
1459
1460  public class SystemConfigFileCommitEventLogger {
1461    ctor public SystemConfigFileCommitEventLogger(@NonNull String);
1462    method public void setStartTime(long);
1463  }
1464
1465}
1466
1467package android.uwb {
1468
1469  public class UwbFrameworkInitializer {
1470    method public static void registerServiceWrappers();
1471  }
1472
1473}
1474
1475package android.view.accessibility {
1476
1477  public final class AccessibilityManager {
1478    method public boolean startFlashNotificationSequence(@NonNull android.content.Context, int);
1479    method public boolean stopFlashNotificationSequence(@NonNull android.content.Context);
1480  }
1481
1482}
1483
1484package com.android.okhttp.internalandroidapi {
1485
1486  public final class AndroidResponseCacheAdapter {
1487    ctor public AndroidResponseCacheAdapter(@NonNull com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder);
1488    method public void close() throws java.io.IOException;
1489    method public void delete() throws java.io.IOException;
1490    method public void flush() throws java.io.IOException;
1491    method @Nullable public java.net.CacheResponse get(@NonNull java.net.URI, @NonNull String, @Nullable java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
1492    method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder();
1493    method public int getHitCount();
1494    method public long getMaxSize();
1495    method public int getNetworkCount();
1496    method public int getRequestCount();
1497    method public long getSize() throws java.io.IOException;
1498    method @Nullable public java.net.CacheRequest put(@NonNull java.net.URI, @NonNull java.net.URLConnection) throws java.io.IOException;
1499  }
1500
1501  public interface HasCacheHolder {
1502    method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder();
1503  }
1504
1505  public static final class HasCacheHolder.CacheHolder {
1506    method @NonNull public static com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder create(@NonNull java.io.File, long);
1507    method public boolean isEquivalent(@NonNull java.io.File, long);
1508  }
1509
1510}
1511
1512package dalvik.annotation.codegen {
1513
1514  @java.lang.annotation.Repeatable(CovariantReturnType.CovariantReturnTypes.class) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface CovariantReturnType {
1515    method public abstract int presentAfter();
1516    method public abstract Class<?> returnType();
1517  }
1518
1519  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public static @interface CovariantReturnType.CovariantReturnTypes {
1520    method public abstract dalvik.annotation.codegen.CovariantReturnType[] value();
1521  }
1522
1523}
1524
1525package dalvik.annotation.optimization {
1526
1527  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface NeverCompile {
1528  }
1529
1530  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.METHOD}) public @interface NeverInline {
1531  }
1532
1533}
1534
1535package dalvik.system {
1536
1537  public final class AnnotatedStackTraceElement {
1538    method @Nullable public Object getBlockedOn();
1539    method @Nullable public Object[] getHeldLocks();
1540    method @NonNull public StackTraceElement getStackTraceElement();
1541  }
1542
1543  public class AppSpecializationHooks {
1544    method public static void handleCompatChangesBeforeBindingApplication();
1545  }
1546
1547  public class BaseDexClassLoader extends java.lang.ClassLoader {
1548    method public void addDexPath(@Nullable String);
1549    method public void addNativePath(@NonNull java.util.Collection<java.lang.String>);
1550    method @NonNull public String getLdLibraryPath();
1551    method public void reportClassLoaderChain();
1552    method public static void setReporter(@Nullable dalvik.system.BaseDexClassLoader.Reporter);
1553  }
1554
1555  public static interface BaseDexClassLoader.Reporter {
1556    method public void report(@NonNull java.util.Map<java.lang.String,java.lang.String>);
1557  }
1558
1559  public final class BlockGuard {
1560    method @NonNull public static dalvik.system.BlockGuard.Policy getThreadPolicy();
1561    method @NonNull public static dalvik.system.BlockGuard.VmPolicy getVmPolicy();
1562    method public static void setThreadPolicy(@NonNull dalvik.system.BlockGuard.Policy);
1563    method public static void setVmPolicy(@NonNull dalvik.system.BlockGuard.VmPolicy);
1564    field public static final dalvik.system.BlockGuard.Policy LAX_POLICY;
1565    field public static final dalvik.system.BlockGuard.VmPolicy LAX_VM_POLICY;
1566  }
1567
1568  public static interface BlockGuard.Policy {
1569    method public int getPolicyMask();
1570    method public void onReadFromDisk();
1571    method public void onUnbufferedIO();
1572    method public void onWriteToDisk();
1573  }
1574
1575  public static interface BlockGuard.VmPolicy {
1576    method public void onPathAccess(@NonNull String);
1577  }
1578
1579  public final class CloseGuard {
1580    method public void close();
1581    method public static dalvik.system.CloseGuard get();
1582    method public static dalvik.system.CloseGuard.Reporter getReporter();
1583    method public void open(String);
1584    method public void openWithCallSite(String, String);
1585    method public static void setEnabled(boolean);
1586    method public static void setReporter(dalvik.system.CloseGuard.Reporter);
1587    method public void warnIfOpen();
1588  }
1589
1590  public static interface CloseGuard.Reporter {
1591    method public default void report(String);
1592    method public void report(String, Throwable);
1593  }
1594
1595  public final class DelegateLastClassLoader extends dalvik.system.PathClassLoader {
1596    ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[]);
1597    ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[], ClassLoader[]);
1598  }
1599
1600  public final class DexFile {
1601    method @Deprecated @NonNull public static dalvik.system.DexFile.OptimizationInfo getDexFileOptimizationInfo(@NonNull String, @NonNull String) throws java.io.FileNotFoundException;
1602    method @Nullable public static String[] getDexFileOutputPaths(@NonNull String, @NonNull String) throws java.io.FileNotFoundException;
1603    method @Deprecated public static int getDexOptNeeded(@NonNull String, @NonNull String, @NonNull String, @Nullable String, boolean, boolean) throws java.io.FileNotFoundException, java.io.IOException;
1604    method @NonNull public static String getSafeModeCompilerFilter(@NonNull String);
1605    method public static boolean isOptimizedCompilerFilter(@NonNull String);
1606    method public static boolean isProfileGuidedCompilerFilter(@NonNull String);
1607    method public static boolean isValidCompilerFilter(@NonNull String);
1608    method public static boolean isVerifiedCompilerFilter(@NonNull String);
1609    field @Deprecated public static final int DEX2OAT_FOR_FILTER = 3; // 0x3
1610    field @Deprecated public static final int NO_DEXOPT_NEEDED = 0; // 0x0
1611  }
1612
1613  public static final class DexFile.OptimizationInfo {
1614    method @NonNull public String getReason();
1615    method @NonNull public String getStatus();
1616  }
1617
1618  public class PathClassLoader extends dalvik.system.BaseDexClassLoader {
1619    ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[]);
1620    ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[], @Nullable ClassLoader[]);
1621  }
1622
1623  public final class RuntimeHooks {
1624    method public static void setTimeZoneIdSupplier(@NonNull java.util.function.Supplier<java.lang.String>);
1625    method public static void setUncaughtExceptionPreHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler);
1626  }
1627
1628  public abstract class SocketTagger {
1629    ctor public SocketTagger();
1630    method public static dalvik.system.SocketTagger get();
1631    method public static void set(dalvik.system.SocketTagger);
1632    method public abstract void tag(java.io.FileDescriptor) throws java.net.SocketException;
1633    method public final void tag(java.net.DatagramSocket) throws java.net.SocketException;
1634    method public final void tag(java.net.Socket) throws java.net.SocketException;
1635    method public abstract void untag(java.io.FileDescriptor) throws java.net.SocketException;
1636    method public final void untag(java.net.DatagramSocket) throws java.net.SocketException;
1637    method public final void untag(java.net.Socket) throws java.net.SocketException;
1638  }
1639
1640  public final class VMDebug {
1641    method public static void attachAgent(String, ClassLoader) throws java.io.IOException;
1642    method public static long countInstancesOfClass(Class, boolean);
1643    method public static long[] countInstancesOfClasses(Class[], boolean);
1644    method public static void dumpHprofData(String) throws java.io.IOException;
1645    method public static void dumpHprofData(String, java.io.FileDescriptor) throws java.io.IOException;
1646    method public static void dumpHprofDataDdms();
1647    method public static void dumpReferenceTables();
1648    method public static int getAllocCount(int);
1649    method public static int getLoadedClassCount();
1650    method public static int getMethodTracingMode();
1651    method public static String getRuntimeStat(String);
1652    method public static java.util.Map<java.lang.String,java.lang.String> getRuntimeStats();
1653    method public static String[] getVmFeatureList();
1654    method public static boolean isDebuggerConnected();
1655    method public static boolean isDebuggingEnabled();
1656    method public static long lastDebuggerActivity();
1657    method public static void printLoadedClasses(int);
1658    method public static void resetAllocCount(int);
1659    method public static void setAllocTrackerStackDepth(int);
1660    method public static void startAllocCounting();
1661    method public static void startMethodTracing(String, int, int, boolean, int);
1662    method public static void startMethodTracing(String, java.io.FileDescriptor, int, int, boolean, int, boolean);
1663    method public static void startMethodTracingDdms(int, int, boolean, int);
1664    method public static void stopAllocCounting();
1665    method public static void stopMethodTracing();
1666    method public static void suspendAllAndSendVmStart();
1667    method public static long threadCpuTimeNanos();
1668    field public static final int KIND_ALL_COUNTS = -1; // 0xffffffff
1669    field public static final int KIND_GLOBAL_ALLOCATED_BYTES = 2; // 0x2
1670    field public static final int KIND_GLOBAL_ALLOCATED_OBJECTS = 1; // 0x1
1671    field public static final int KIND_GLOBAL_CLASS_INIT_COUNT = 32; // 0x20
1672    field public static final int KIND_GLOBAL_CLASS_INIT_TIME = 64; // 0x40
1673    field public static final int KIND_GLOBAL_FREED_BYTES = 8; // 0x8
1674    field public static final int KIND_GLOBAL_FREED_OBJECTS = 4; // 0x4
1675    field public static final int KIND_GLOBAL_GC_INVOCATIONS = 16; // 0x10
1676    field public static final int KIND_THREAD_ALLOCATED_BYTES = 131072; // 0x20000
1677    field public static final int KIND_THREAD_ALLOCATED_OBJECTS = 65536; // 0x10000
1678    field public static final int KIND_THREAD_GC_INVOCATIONS = 1048576; // 0x100000
1679    field public static final int TRACE_COUNT_ALLOCS = 1; // 0x1
1680  }
1681
1682  public final class VMRuntime {
1683    method public long addressOf(Object);
1684    method public static void bootCompleted();
1685    method public void clampGrowthLimit();
1686    method public void clearGrowthLimit();
1687    method public static String getCurrentInstructionSet();
1688    method public static String getInstructionSet(String);
1689    method public static dalvik.system.VMRuntime getRuntime();
1690    method public int getTargetSdkVersion();
1691    method public boolean is64Bit();
1692    method public static boolean is64BitAbi(String);
1693    method public static boolean is64BitInstructionSet(String);
1694    method public boolean isCheckJniEnabled();
1695    method public boolean isNativeDebuggable();
1696    method public static boolean isValidClassLoaderContext(String);
1697    method public Object newNonMovableArray(Class<?>, int);
1698    method public Object newUnpaddedArray(Class<?>, int);
1699    method public void notifyStartupCompleted();
1700    method public void preloadDexCaches();
1701    method public static void registerAppInfo(String, String, String, String[], int);
1702    method @Deprecated public void registerNativeAllocation(int);
1703    method public void registerNativeAllocation(long);
1704    method @Deprecated public void registerNativeFree(int);
1705    method public void registerNativeFree(long);
1706    method public static void registerSensitiveThread();
1707    method public void requestConcurrentGC();
1708    method public static void resetJitCounters();
1709    method public static void setDedupeHiddenApiWarnings(boolean);
1710    method public void setDisabledCompatChanges(long[]);
1711    method public void setHiddenApiAccessLogSamplingRate(int);
1712    method public void setHiddenApiExemptions(String[]);
1713    method public static void setHiddenApiUsageLogger(dalvik.system.VMRuntime.HiddenApiUsageLogger);
1714    method public static void setNonSdkApiUsageConsumer(java.util.function.Consumer<java.lang.String>);
1715    method public static void setProcessDataDirectory(String);
1716    method public static void setProcessPackageName(String);
1717    method public void setTargetSdkVersion(int);
1718    method public void updateProcessState(int);
1719    method public String vmInstructionSet();
1720    method public String vmLibrary();
1721    field public static final int CODE_PATH_TYPE_PRIMARY_APK = 1; // 0x1
1722    field public static final int CODE_PATH_TYPE_SECONDARY_DEX = 4; // 0x4
1723    field public static final int CODE_PATH_TYPE_SPLIT_APK = 2; // 0x2
1724    field public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000; // 0x2710
1725  }
1726
1727  public static interface VMRuntime.HiddenApiUsageLogger {
1728    method public void hiddenApiUsed(int, String, String, int, boolean);
1729    field public static final int ACCESS_METHOD_JNI = 2; // 0x2
1730    field public static final int ACCESS_METHOD_LINKING = 3; // 0x3
1731    field public static final int ACCESS_METHOD_NONE = 0; // 0x0
1732    field public static final int ACCESS_METHOD_REFLECTION = 1; // 0x1
1733  }
1734
1735  public final class VMStack {
1736    method @Nullable public static dalvik.system.AnnotatedStackTraceElement[] getAnnotatedThreadStackTrace(Thread);
1737  }
1738
1739  public final class ZygoteHooks {
1740    method public static void gcAndFinalize();
1741    method public static boolean isIndefiniteThreadSuspensionSafe();
1742    method public static void onBeginPreload();
1743    method public static void onEndPreload();
1744    method public static void postForkChild(int, boolean, boolean, String);
1745    method public static void postForkCommon();
1746    method public static void postForkSystemServer(int);
1747    method public static void preFork();
1748    method public static void startZygoteNoThreadCreation();
1749    method public static void stopZygoteNoThreadCreation();
1750  }
1751
1752}
1753
1754package java.io {
1755
1756  public final class FileDescriptor {
1757    method public int getInt$();
1758    method public void setInt$(int);
1759  }
1760
1761  public class FileInputStream extends java.io.InputStream {
1762    ctor public FileInputStream(java.io.FileDescriptor, boolean);
1763  }
1764
1765}
1766
1767package java.lang {
1768
1769  public class Thread implements java.lang.Runnable {
1770    method public static java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionPreHandler();
1771    method public static void setUncaughtExceptionPreHandler(java.lang.Thread.UncaughtExceptionHandler);
1772  }
1773
1774}
1775
1776package java.net {
1777
1778  public class DatagramSocket implements java.io.Closeable {
1779    method public java.io.FileDescriptor getFileDescriptor$();
1780  }
1781
1782  public final class Inet4Address extends java.net.InetAddress {
1783    field public static final java.net.InetAddress ALL;
1784    field public static final java.net.InetAddress ANY;
1785    field public static final java.net.InetAddress LOOPBACK;
1786  }
1787
1788  public final class Inet6Address extends java.net.InetAddress {
1789    field public static final java.net.InetAddress ANY;
1790    field public static final java.net.InetAddress LOOPBACK;
1791  }
1792
1793  public class InetAddress implements java.io.Serializable {
1794    method public static void clearDnsCache();
1795    method @NonNull public static java.net.InetAddress[] getAllByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException;
1796    method @NonNull public static java.net.InetAddress getByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException;
1797    method @Deprecated public static boolean isNumeric(String);
1798    method @Deprecated public static java.net.InetAddress parseNumericAddress(String);
1799  }
1800
1801  public class InetSocketAddress extends java.net.SocketAddress {
1802    ctor public InetSocketAddress();
1803  }
1804
1805  public class ServerSocket implements java.io.Closeable {
1806    method public java.net.SocketImpl getImpl() throws java.net.SocketException;
1807  }
1808
1809  public class Socket implements java.io.Closeable {
1810    method public java.io.FileDescriptor getFileDescriptor$();
1811  }
1812
1813  public abstract class SocketImpl implements java.net.SocketOptions {
1814    method public java.io.FileDescriptor getFD$();
1815  }
1816
1817}
1818
1819package java.nio {
1820
1821  public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer> {
1822    method public void setAccessible(boolean);
1823  }
1824
1825  public class DirectByteBuffer extends java.nio.MappedByteBuffer {
1826    ctor public DirectByteBuffer(int, long, java.io.FileDescriptor, Runnable, boolean);
1827    method public final long address();
1828    method public final java.nio.CharBuffer asCharBuffer();
1829    method public final java.nio.DoubleBuffer asDoubleBuffer();
1830    method public final java.nio.FloatBuffer asFloatBuffer();
1831    method public final java.nio.IntBuffer asIntBuffer();
1832    method public final java.nio.LongBuffer asLongBuffer();
1833    method public final java.nio.ByteBuffer asReadOnlyBuffer();
1834    method public final java.nio.ShortBuffer asShortBuffer();
1835    method public final java.nio.ByteBuffer compact();
1836    method public final java.nio.MappedByteBuffer duplicate();
1837    method public final byte get();
1838    method public final byte get(int);
1839    method public final char getChar();
1840    method public final char getChar(int);
1841    method public final double getDouble();
1842    method public final double getDouble(int);
1843    method public final float getFloat();
1844    method public final float getFloat(int);
1845    method public int getInt();
1846    method public int getInt(int);
1847    method public final long getLong();
1848    method public final long getLong(int);
1849    method public final short getShort();
1850    method public final short getShort(int);
1851    method public final boolean isDirect();
1852    method public final boolean isReadOnly();
1853    method public final java.nio.ByteBuffer put(byte);
1854    method public final java.nio.ByteBuffer put(int, byte);
1855    method public final java.nio.ByteBuffer putChar(char);
1856    method public final java.nio.ByteBuffer putChar(int, char);
1857    method public final java.nio.ByteBuffer putDouble(double);
1858    method public final java.nio.ByteBuffer putDouble(int, double);
1859    method public final java.nio.ByteBuffer putFloat(float);
1860    method public final java.nio.ByteBuffer putFloat(int, float);
1861    method public final java.nio.ByteBuffer putInt(int);
1862    method public final java.nio.ByteBuffer putInt(int, int);
1863    method public final java.nio.ByteBuffer putLong(int, long);
1864    method public final java.nio.ByteBuffer putLong(long);
1865    method public final java.nio.ByteBuffer putShort(int, short);
1866    method public final java.nio.ByteBuffer putShort(short);
1867    method public final void setAccessible(boolean);
1868    method public final java.nio.MappedByteBuffer slice();
1869    method public final java.nio.MappedByteBuffer slice(int, int);
1870  }
1871
1872  public final class NIOAccess {
1873    method public static Object getBaseArray(java.nio.Buffer);
1874    method public static int getBaseArrayOffset(java.nio.Buffer);
1875  }
1876
1877  public final class NioUtils {
1878    method public static void freeDirectBuffer(java.nio.ByteBuffer);
1879    method public static byte[] unsafeArray(java.nio.ByteBuffer);
1880    method public static int unsafeArrayOffset(java.nio.ByteBuffer);
1881  }
1882
1883}
1884
1885package java.security {
1886
1887  public abstract class Provider extends java.util.Properties {
1888    method public void warmUpServiceProvision();
1889  }
1890
1891  public abstract class Signature extends java.security.SignatureSpi {
1892    method public java.security.SignatureSpi getCurrentSpi();
1893  }
1894
1895}
1896
1897package java.text {
1898
1899  public abstract class DateFormat extends java.text.Format {
1900    method public static final void set24HourTimePref(Boolean);
1901  }
1902
1903}
1904
1905package java.util {
1906
1907  public class LinkedHashMap<K, V> extends java.util.HashMap<K,V> implements java.util.Map<K,V> java.util.SequencedMap<K,V> {
1908    method public java.util.Map.Entry<K,V> eldest();
1909  }
1910
1911}
1912
1913package java.util.zip {
1914
1915  public class ZipEntry implements java.lang.Cloneable {
1916    method public long getDataOffset();
1917  }
1918
1919}
1920
1921package javax.crypto {
1922
1923  public class Cipher {
1924    method public javax.crypto.CipherSpi getCurrentSpi();
1925  }
1926
1927  public class KeyAgreement {
1928    method public javax.crypto.KeyAgreementSpi getCurrentSpi();
1929  }
1930
1931  public class Mac implements java.lang.Cloneable {
1932    method public javax.crypto.MacSpi getCurrentSpi();
1933  }
1934
1935}
1936
1937package javax.net.ssl {
1938
1939  public abstract class HttpsURLConnection extends java.net.HttpURLConnection {
1940    method public static javax.net.ssl.HostnameVerifier getStrictHostnameVerifier();
1941  }
1942
1943}
1944
1945package libcore.content.type {
1946
1947  public final class MimeMap {
1948    method @NonNull public libcore.content.type.MimeMap.Builder buildUpon();
1949    method @NonNull public static libcore.content.type.MimeMap.Builder builder();
1950    method @NonNull public java.util.Set<java.lang.String> extensions();
1951    method @NonNull public static libcore.content.type.MimeMap getDefault();
1952    method @Nullable public String guessExtensionFromMimeType(@Nullable String);
1953    method @Nullable public String guessMimeTypeFromExtension(@Nullable String);
1954    method public boolean hasExtension(@Nullable String);
1955    method public boolean hasMimeType(@Nullable String);
1956    method @NonNull public java.util.Set<java.lang.String> mimeTypes();
1957    method public static void setDefaultSupplier(@NonNull java.util.function.Supplier<libcore.content.type.MimeMap>);
1958  }
1959
1960  public static final class MimeMap.Builder {
1961    method @NonNull public libcore.content.type.MimeMap.Builder addMimeMapping(@NonNull String, @NonNull java.util.List<java.lang.String>);
1962    method @NonNull public libcore.content.type.MimeMap build();
1963  }
1964
1965}
1966
1967package libcore.io {
1968
1969  public class ForwardingOs implements libcore.io.Os {
1970    ctor protected ForwardingOs(@NonNull libcore.io.Os);
1971    method public boolean access(@Nullable String, int) throws android.system.ErrnoException;
1972    method public java.io.FileDescriptor open(@Nullable String, int, int) throws android.system.ErrnoException;
1973    method public void remove(@Nullable String) throws android.system.ErrnoException;
1974    method public void rename(@Nullable String, @Nullable String) throws android.system.ErrnoException;
1975    method @Nullable public android.system.StructStat stat(@Nullable String) throws android.system.ErrnoException;
1976    method public void unlink(@Nullable String) throws android.system.ErrnoException;
1977  }
1978
1979  public final class IoBridge {
1980    method public static void closeAndSignalBlockedThreads(@NonNull java.io.FileDescriptor) throws java.io.IOException;
1981    method @NonNull public static java.io.FileDescriptor open(@NonNull String, int) throws java.io.FileNotFoundException;
1982    method public static int read(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException;
1983    method public static void write(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException;
1984  }
1985
1986  public final class IoUtils {
1987    method public static int acquireRawFd(@NonNull java.io.FileDescriptor);
1988    method public static void close(@Nullable java.io.FileDescriptor) throws java.io.IOException;
1989    method public static void closeQuietly(@Nullable java.io.FileDescriptor);
1990    method public static void closeQuietly(@Nullable AutoCloseable);
1991    method public static void closeQuietly(@Nullable java.net.Socket);
1992    method @NonNull public static byte[] readFileAsByteArray(@NonNull String) throws java.io.IOException;
1993    method @NonNull public static String readFileAsString(@NonNull String) throws java.io.IOException;
1994    method public static void setBlocking(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException;
1995    method public static void setFdOwner(@NonNull java.io.FileDescriptor, @NonNull Object);
1996  }
1997
1998  public final class Memory {
1999    method public static void memmove(@NonNull Object, int, @NonNull Object, int, long);
2000    method public static int peekInt(@NonNull byte[], int, @NonNull java.nio.ByteOrder);
2001    method public static short peekShort(@NonNull byte[], int, @NonNull java.nio.ByteOrder);
2002    method public static void pokeInt(@NonNull byte[], int, int, @NonNull java.nio.ByteOrder);
2003    method public static void pokeLong(@NonNull byte[], int, long, @NonNull java.nio.ByteOrder);
2004    method public static void pokeShort(@NonNull byte[], int, short, @NonNull java.nio.ByteOrder);
2005  }
2006
2007  public interface Os {
2008    method public static boolean compareAndSetDefault(libcore.io.Os, libcore.io.Os);
2009    method public static libcore.io.Os getDefault();
2010  }
2011
2012  public final class Streams {
2013    method public static int copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException;
2014    method @NonNull public static byte[] readFully(@NonNull java.io.InputStream) throws java.io.IOException;
2015    method public static void readFully(@NonNull java.io.InputStream, @NonNull byte[]) throws java.io.IOException;
2016    method @NonNull public static String readFully(@NonNull java.io.Reader) throws java.io.IOException;
2017    method @NonNull public static byte[] readFullyNoClose(@NonNull java.io.InputStream) throws java.io.IOException;
2018    method public static int readSingleByte(@NonNull java.io.InputStream) throws java.io.IOException;
2019    method public static long skipByReading(@NonNull java.io.InputStream, long) throws java.io.IOException;
2020    method public static void writeSingleByte(@NonNull java.io.OutputStream, int) throws java.io.IOException;
2021  }
2022
2023}
2024
2025package libcore.net {
2026
2027  public class InetAddressUtils {
2028    method public static boolean isNumericAddress(String);
2029    method public static java.net.InetAddress parseNumericAddress(String);
2030  }
2031
2032  public abstract class NetworkSecurityPolicy {
2033    ctor public NetworkSecurityPolicy();
2034    method public static libcore.net.NetworkSecurityPolicy getInstance();
2035    method public abstract boolean isCertificateTransparencyVerificationRequired(String);
2036    method public abstract boolean isCleartextTrafficPermitted();
2037    method public abstract boolean isCleartextTrafficPermitted(String);
2038    method public static void setInstance(libcore.net.NetworkSecurityPolicy);
2039  }
2040
2041}
2042
2043package libcore.net.event {
2044
2045  public final class NetworkEventDispatcher {
2046    method public void dispatchNetworkConfigurationChange();
2047    method public static libcore.net.event.NetworkEventDispatcher getInstance();
2048  }
2049
2050}
2051
2052package libcore.net.http {
2053
2054  public interface Dns {
2055    method @NonNull public java.util.List<java.net.InetAddress> lookup(@Nullable String) throws java.net.UnknownHostException;
2056  }
2057
2058  public class HttpURLConnectionFactory {
2059    method @NonNull public static libcore.net.http.HttpURLConnectionFactory createInstance();
2060    method public java.net.URLConnection openConnection(@NonNull java.net.URL, @NonNull javax.net.SocketFactory, @NonNull java.net.Proxy) throws java.io.IOException;
2061    method public void setDns(@NonNull libcore.net.http.Dns);
2062    method public void setNewConnectionPool(int, long, @NonNull java.util.concurrent.TimeUnit);
2063  }
2064
2065}
2066
2067package libcore.util {
2068
2069  public final class EmptyArray {
2070    field @NonNull public static final boolean[] BOOLEAN;
2071    field @NonNull public static final byte[] BYTE;
2072    field @NonNull public static final float[] FLOAT;
2073    field @NonNull public static final int[] INT;
2074    field @NonNull public static final long[] LONG;
2075    field @NonNull public static final Object[] OBJECT;
2076    field @NonNull public static final String[] STRING;
2077  }
2078
2079  public final class FP16 {
2080    method public static short ceil(short);
2081    method public static int compare(short, short);
2082    method public static boolean equals(short, short);
2083    method public static short floor(short);
2084    method public static boolean greater(short, short);
2085    method public static boolean greaterEquals(short, short);
2086    method public static boolean isInfinite(short);
2087    method public static boolean isNaN(short);
2088    method public static boolean isNormalized(short);
2089    method public static boolean less(short, short);
2090    method public static boolean lessEquals(short, short);
2091    method public static short max(short, short);
2092    method public static short min(short, short);
2093    method public static short rint(short);
2094    method public static float toFloat(short);
2095    method public static short toHalf(float);
2096    method public static String toHexString(short);
2097    method public static short trunc(short);
2098    field public static final short EPSILON = 5120; // 0x1400
2099    field public static final int EXPONENT_BIAS = 15; // 0xf
2100    field public static final int EXPONENT_SHIFT = 10; // 0xa
2101    field public static final int EXPONENT_SIGNIFICAND_MASK = 32767; // 0x7fff
2102    field public static final short LOWEST_VALUE = -1025; // 0xfffffbff
2103    field public static final int MAX_EXPONENT = 15; // 0xf
2104    field public static final short MAX_VALUE = 31743; // 0x7bff
2105    field public static final int MIN_EXPONENT = -14; // 0xfffffff2
2106    field public static final short MIN_NORMAL = 1024; // 0x400
2107    field public static final short MIN_VALUE = 1; // 0x1
2108    field public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00
2109    field public static final short NEGATIVE_ZERO = -32768; // 0xffff8000
2110    field public static final short NaN = 32256; // 0x7e00
2111    field public static final short POSITIVE_INFINITY = 31744; // 0x7c00
2112    field public static final short POSITIVE_ZERO = 0; // 0x0
2113    field public static final int SHIFTED_EXPONENT_MASK = 31; // 0x1f
2114    field public static final int SIGNIFICAND_MASK = 1023; // 0x3ff
2115    field public static final int SIGN_MASK = 32768; // 0x8000
2116    field public static final int SIGN_SHIFT = 15; // 0xf
2117    field public static final int SIZE = 16; // 0x10
2118  }
2119
2120  public class HexEncoding {
2121    method public static byte[] decode(char[]) throws java.lang.IllegalArgumentException;
2122    method public static byte[] decode(char[], boolean) throws java.lang.IllegalArgumentException;
2123    method public static byte[] decode(String) throws java.lang.IllegalArgumentException;
2124    method public static byte[] decode(String, boolean) throws java.lang.IllegalArgumentException;
2125    method public static char[] encode(byte[]);
2126    method public static char[] encode(byte[], boolean);
2127    method public static char[] encode(byte[], int, int);
2128    method public static String encodeToString(byte, boolean);
2129    method public static String encodeToString(byte[]);
2130    method public static String encodeToString(byte[], boolean);
2131  }
2132
2133  public class NativeAllocationRegistry {
2134    ctor public NativeAllocationRegistry(@NonNull ClassLoader, long, long);
2135    method public static void applyFreeFunction(long, long);
2136    method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long);
2137    method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long, long);
2138    method public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull ClassLoader, long, long);
2139    method @NonNull public Runnable registerNativeAllocation(@NonNull Object, long);
2140  }
2141
2142  public class SneakyThrow {
2143    method public static void sneakyThrow(@NonNull Throwable);
2144  }
2145
2146  public class XmlObjectFactory {
2147    method @NonNull public static org.xml.sax.XMLReader newXMLReader();
2148    method @NonNull public static org.xmlpull.v1.XmlPullParser newXmlPullParser();
2149    method @NonNull public static org.xmlpull.v1.XmlSerializer newXmlSerializer();
2150  }
2151
2152}
2153
2154package org.apache.harmony.dalvik.ddmc {
2155
2156  public class Chunk {
2157    ctor public Chunk(int, byte[], int, int);
2158    ctor public Chunk(int, java.nio.ByteBuffer);
2159    field public int type;
2160  }
2161
2162  public abstract class ChunkHandler {
2163    ctor public ChunkHandler();
2164    method public static org.apache.harmony.dalvik.ddmc.Chunk createFailChunk(int, String);
2165    method public abstract org.apache.harmony.dalvik.ddmc.Chunk handleChunk(org.apache.harmony.dalvik.ddmc.Chunk);
2166    method public static String name(int);
2167    method public abstract void onConnected();
2168    method public abstract void onDisconnected();
2169    method public static int type(String);
2170    method public static java.nio.ByteBuffer wrapChunk(org.apache.harmony.dalvik.ddmc.Chunk);
2171    field public static final java.nio.ByteOrder CHUNK_ORDER;
2172  }
2173
2174  public final class DdmServer {
2175    method public static void registerHandler(int, org.apache.harmony.dalvik.ddmc.ChunkHandler);
2176    method public static void registrationComplete();
2177    method public static void sendChunk(org.apache.harmony.dalvik.ddmc.Chunk);
2178    method public static org.apache.harmony.dalvik.ddmc.ChunkHandler unregisterHandler(int);
2179  }
2180
2181  public final class DdmVmInternal {
2182    method public static void setRecentAllocationsTrackingEnabled(boolean);
2183    method public static void setThreadNotifyEnabled(boolean);
2184  }
2185
2186}
2187
2188package org.json {
2189
2190  public class JSONObject {
2191    method @NonNull public java.util.Set<java.lang.String> keySet();
2192  }
2193
2194}
2195
2196package sun.misc {
2197
2198  public class Cleaner extends java.lang.ref.PhantomReference<java.lang.Object> {
2199    method public void clean();
2200    method public static sun.misc.Cleaner create(Object, Runnable);
2201  }
2202
2203  public final class Unsafe {
2204    method public int arrayBaseOffset(Class);
2205    method public int arrayIndexScale(Class);
2206    method public void copyMemory(long, long, long);
2207    method public boolean getBoolean(Object, long);
2208    method public byte getByte(Object, long);
2209    method public byte getByte(long);
2210    method public double getDouble(Object, long);
2211    method public double getDouble(long);
2212    method public float getFloat(Object, long);
2213    method public float getFloat(long);
2214    method public int getInt(Object, long);
2215    method public int getInt(long);
2216    method public long getLong(Object, long);
2217    method public long getLong(long);
2218    method public Object getObject(Object, long);
2219    method public static sun.misc.Unsafe getUnsafe();
2220    method public long objectFieldOffset(java.lang.reflect.Field);
2221    method public void putBoolean(Object, long, boolean);
2222    method public void putByte(Object, long, byte);
2223    method public void putByte(long, byte);
2224    method public void putDouble(Object, long, double);
2225    method public void putDouble(long, double);
2226    method public void putFloat(Object, long, float);
2227    method public void putFloat(long, float);
2228    method public void putInt(Object, long, int);
2229    method public void putInt(long, int);
2230    method public void putLong(Object, long, long);
2231    method public void putLong(long, long);
2232    method public void putObject(Object, long, Object);
2233  }
2234
2235}
2236
2237package sun.security.jca {
2238
2239  public class Providers {
2240    method public static Object startJarVerification();
2241    method public static void stopJarVerification(Object);
2242  }
2243
2244}
2245
2246package sun.security.pkcs {
2247
2248  public class PKCS7 {
2249    ctor public PKCS7(byte[]) throws sun.security.pkcs.ParsingException;
2250    ctor public PKCS7(java.io.InputStream) throws java.io.IOException, sun.security.pkcs.ParsingException;
2251    method public java.security.cert.X509Certificate[] getCertificates();
2252    method public sun.security.pkcs.SignerInfo[] getSignerInfos();
2253    method public sun.security.pkcs.SignerInfo[] verify(byte[]) throws java.security.NoSuchAlgorithmException, java.security.SignatureException;
2254    method public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, java.io.InputStream) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.SignatureException;
2255  }
2256
2257  public class ParsingException extends java.io.IOException {
2258  }
2259
2260  public class SignerInfo {
2261    ctor public SignerInfo();
2262    method public java.util.ArrayList<java.security.cert.X509Certificate> getCertificateChain(sun.security.pkcs.PKCS7) throws java.io.IOException;
2263  }
2264
2265}
2266
2267package sun.security.util {
2268
2269  public final class ObjectIdentifier implements java.io.Serializable {
2270    ctor public ObjectIdentifier(String) throws java.io.IOException;
2271  }
2272
2273}
2274
2275package sun.security.x509 {
2276
2277  public class AlgorithmId implements java.io.Serializable {
2278    ctor public AlgorithmId(sun.security.util.ObjectIdentifier);
2279    method public String getName();
2280  }
2281
2282}
2283
2284