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