xref: /aosp_15_r20/prebuilts/sdk/31/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 GET_INTENT_SENDER_INTENT = "android.permission.GET_INTENT_SENDER_INTENT";
6  }
7
8}
9
10package android.app {
11
12  public class ActivityManager {
13    method @RequiresPermission(android.Manifest.permission.SET_ACTIVITY_WATCHER) public void addHomeVisibilityListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.HomeVisibilityListener);
14    method @RequiresPermission(android.Manifest.permission.SET_ACTIVITY_WATCHER) public void removeHomeVisibilityListener(@NonNull android.app.HomeVisibilityListener);
15    method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public boolean updateMccMncConfiguration(@NonNull String, @NonNull String);
16  }
17
18  public class AppOpsManager {
19    field public static final String OPSTR_NO_ISOLATED_STORAGE = "android:no_isolated_storage";
20  }
21
22  public class BroadcastOptions {
23    method public int getMaxManifestReceiverApiLevel();
24    method public void setMaxManifestReceiverApiLevel(int);
25  }
26
27  public abstract class HomeVisibilityListener {
28    ctor public HomeVisibilityListener();
29    method public abstract void onHomeVisibilityChanged(boolean);
30  }
31
32  public class NotificationManager {
33    method public boolean hasEnabledNotificationListener(@NonNull String, @NonNull android.os.UserHandle);
34    field public static final String ACTION_NOTIFICATION_LISTENER_ENABLED_CHANGED = "android.app.action.NOTIFICATION_LISTENER_ENABLED_CHANGED";
35  }
36
37  public final class PendingIntent implements android.os.Parcelable {
38    method @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public boolean intentFilterEquals(@Nullable android.app.PendingIntent);
39    method @NonNull @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public java.util.List<android.content.pm.ResolveInfo> queryIntentComponents(int);
40  }
41
42  public class StatusBarManager {
43    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setExpansionDisabledForSimNetworkLock(boolean);
44  }
45
46}
47
48package android.app.role {
49
50  public class RoleFrameworkInitializer {
51    method public static void registerServiceWrappers();
52  }
53
54  public final class RoleManager {
55    method @Nullable public String getBrowserRoleHolder(int);
56    method @Nullable public String getSmsRoleHolder(int);
57    method @Nullable @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public boolean setBrowserRoleHolder(@Nullable String, int);
58  }
59
60}
61
62package android.app.usage {
63
64  public class NetworkStatsManager {
65    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>);
66  }
67
68}
69
70package android.compat {
71
72  public final class Compatibility {
73    method public static void clearBehaviorChangeDelegate();
74    method public static void clearOverrides();
75    method public static boolean isChangeEnabled(long);
76    method public static void reportUnconditionalChange(long);
77    method public static void setBehaviorChangeDelegate(android.compat.Compatibility.BehaviorChangeDelegate);
78    method public static void setOverrides(android.compat.Compatibility.ChangeConfig);
79  }
80
81  public static interface Compatibility.BehaviorChangeDelegate {
82    method public default boolean isChangeEnabled(long);
83    method public default void onChangeReported(long);
84  }
85
86  public static final class Compatibility.ChangeConfig {
87    ctor public Compatibility.ChangeConfig(@NonNull java.util.Set<java.lang.Long>, @NonNull java.util.Set<java.lang.Long>);
88    method @NonNull public long[] getDisabledChangesArray();
89    method @NonNull public java.util.Set<java.lang.Long> getDisabledSet();
90    method @NonNull public long[] getEnabledChangesArray();
91    method @NonNull public java.util.Set<java.lang.Long> getEnabledSet();
92    method public boolean isEmpty();
93    method public boolean isForceDisabled(long);
94    method public boolean isForceEnabled(long);
95  }
96
97}
98
99package android.content {
100
101  public abstract class ContentProvider implements android.content.ComponentCallbacks2 {
102    method @NonNull public static android.net.Uri createContentUriForUser(@NonNull android.net.Uri, @NonNull android.os.UserHandle);
103  }
104
105  public abstract class Context {
106    method @NonNull public android.os.UserHandle getUser();
107    field public static final String PAC_PROXY_SERVICE = "pac_proxy";
108    field public static final String TEST_NETWORK_SERVICE = "test_network";
109  }
110
111}
112
113package android.content.pm {
114
115  public abstract class PackageManager {
116    method @NonNull public String getPermissionControllerPackageName();
117  }
118
119}
120
121package android.hardware.usb {
122
123  public class UsbManager {
124    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getGadgetHalVersion();
125    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbBandwidthMbps();
126    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbHalVersion();
127    field public static final int GADGET_HAL_NOT_SUPPORTED = -1; // 0xffffffff
128    field public static final int GADGET_HAL_V1_0 = 10; // 0xa
129    field public static final int GADGET_HAL_V1_1 = 11; // 0xb
130    field public static final int GADGET_HAL_V1_2 = 12; // 0xc
131    field public static final int USB_DATA_TRANSFER_RATE_10G = 10240; // 0x2800
132    field public static final int USB_DATA_TRANSFER_RATE_20G = 20480; // 0x5000
133    field public static final int USB_DATA_TRANSFER_RATE_40G = 40960; // 0xa000
134    field public static final int USB_DATA_TRANSFER_RATE_5G = 5120; // 0x1400
135    field public static final int USB_DATA_TRANSFER_RATE_FULL_SPEED = 12; // 0xc
136    field public static final int USB_DATA_TRANSFER_RATE_HIGH_SPEED = 480; // 0x1e0
137    field public static final int USB_DATA_TRANSFER_RATE_LOW_SPEED = 2; // 0x2
138    field public static final int USB_DATA_TRANSFER_RATE_UNKNOWN = -1; // 0xffffffff
139    field public static final int USB_HAL_NOT_SUPPORTED = -1; // 0xffffffff
140    field public static final int USB_HAL_V1_0 = 10; // 0xa
141    field public static final int USB_HAL_V1_1 = 11; // 0xb
142    field public static final int USB_HAL_V1_2 = 12; // 0xc
143    field public static final int USB_HAL_V1_3 = 13; // 0xd
144  }
145
146}
147
148package android.media {
149
150  public class AudioManager {
151    method public void adjustStreamVolumeForUid(int, int, int, @NonNull String, int, int, int);
152    method public void adjustSuggestedStreamVolumeForUid(int, int, int, @NonNull String, int, int, int);
153    method public void setStreamVolumeForUid(int, int, int, @NonNull String, int, int, int);
154    field public static final int FLAG_FROM_KEY = 4096; // 0x1000
155  }
156
157  public class MediaCommunicationManager {
158    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaCommunicationManager.SessionCallback);
159    method public void unregisterSessionCallback(@NonNull android.media.MediaCommunicationManager.SessionCallback);
160  }
161
162  public static interface MediaCommunicationManager.SessionCallback {
163    method public default void onSession2TokenCreated(@NonNull android.media.Session2Token);
164    method public default void onSession2TokensChanged(@NonNull java.util.List<android.media.Session2Token>);
165  }
166
167  public class MediaFrameworkInitializer {
168    method public static void registerServiceWrappers();
169    method public static void setMediaServiceManager(@NonNull android.media.MediaServiceManager);
170  }
171
172  public class MediaMetadataRetriever implements java.lang.AutoCloseable {
173    field public static final int METADATA_KEY_VIDEO_CODEC_MIME_TYPE = 40; // 0x28
174  }
175
176  @Deprecated public final class MediaParceledListSlice<T extends android.os.Parcelable> implements android.os.Parcelable {
177    ctor @Deprecated public MediaParceledListSlice(@NonNull java.util.List<T>);
178    method @Deprecated public int describeContents();
179    method @Deprecated @NonNull public static <T extends android.os.Parcelable> android.media.MediaParceledListSlice<T> emptyList();
180    method @Deprecated public java.util.List<T> getList();
181    method @Deprecated public void setInlineCountLimit(int);
182    method @Deprecated public void writeToParcel(android.os.Parcel, int);
183    field @Deprecated @NonNull public static final android.os.Parcelable.ClassLoaderCreator<android.media.MediaParceledListSlice> CREATOR;
184  }
185
186  public class MediaServiceManager {
187    method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaCommunicationServiceRegisterer();
188    method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaSessionServiceRegisterer();
189    method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaTranscodingServiceRegisterer();
190  }
191
192  public static final class MediaServiceManager.ServiceRegisterer {
193    method @Nullable public android.os.IBinder get();
194  }
195
196}
197
198package android.media.session {
199
200  public static final class MediaController.PlaybackInfo implements android.os.Parcelable {
201    ctor public MediaController.PlaybackInfo(int, int, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.media.AudioAttributes, @Nullable String);
202  }
203
204  public final class MediaSession {
205    field public static final int FLAG_EXCLUSIVE_GLOBAL_PRIORITY = 65536; // 0x10000
206  }
207
208  public static final class MediaSession.Token implements android.os.Parcelable {
209    method public int getUid();
210  }
211
212  public final class MediaSessionManager {
213    method public void addOnActiveSessionsChangedListener(@Nullable android.content.ComponentName, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener);
214    method public void dispatchMediaKeyEvent(@NonNull android.view.KeyEvent, boolean);
215    method public void dispatchMediaKeyEventAsSystemService(@NonNull android.view.KeyEvent);
216    method public boolean dispatchMediaKeyEventToSessionAsSystemService(@NonNull android.view.KeyEvent, @NonNull android.media.session.MediaSession.Token);
217    method public void dispatchVolumeKeyEvent(@NonNull android.view.KeyEvent, int, boolean);
218    method public void dispatchVolumeKeyEventAsSystemService(@NonNull android.view.KeyEvent, int);
219    method public void dispatchVolumeKeyEventToSessionAsSystemService(@NonNull android.view.KeyEvent, @NonNull android.media.session.MediaSession.Token);
220    method @NonNull public java.util.List<android.media.session.MediaController> getActiveSessionsForUser(@Nullable android.content.ComponentName, @NonNull android.os.UserHandle);
221    method public void registerRemoteSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.RemoteSessionCallback);
222    method public void unregisterRemoteSessionCallback(@NonNull android.media.session.MediaSessionManager.RemoteSessionCallback);
223    field public static final int RESULT_MEDIA_KEY_HANDLED = 1; // 0x1
224    field public static final int RESULT_MEDIA_KEY_NOT_HANDLED = 0; // 0x0
225  }
226
227  public static interface MediaSessionManager.RemoteSessionCallback {
228    method public void onDefaultRemoteSessionChanged(@Nullable android.media.session.MediaSession.Token);
229    method public void onVolumeChanged(@NonNull android.media.session.MediaSession.Token, int);
230  }
231
232}
233
234package android.net {
235
236  public final class ConnectivityFrameworkInitializer {
237    method public static void registerServiceWrappers();
238  }
239
240  public class ConnectivityManager {
241    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void factoryReset();
242    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();
243    method @Nullable public android.net.ProxyInfo getGlobalProxy();
244    method @NonNull public static android.util.Range<java.lang.Integer> getIpSecNetIdRange();
245    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);
246    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerSystemDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
247    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);
248    method @Deprecated public boolean requestRouteToHostAddress(int, java.net.InetAddress);
249    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);
250    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);
251    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);
252    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(@Nullable android.net.ProxyInfo);
253    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setLegacyLockdownVpnEnabled(boolean);
254    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreference(@NonNull android.os.UserHandle, int, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
255    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>>);
256    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);
257    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);
258    method public void systemReady();
259    field public static final String ACTION_CLEAR_DNS_CACHE = "android.net.action.CLEAR_DNS_CACHE";
260    field public static final String ACTION_PROMPT_LOST_VALIDATION = "android.net.action.PROMPT_LOST_VALIDATION";
261    field public static final String ACTION_PROMPT_PARTIAL_CONNECTIVITY = "android.net.action.PROMPT_PARTIAL_CONNECTIVITY";
262    field public static final String ACTION_PROMPT_UNVALIDATED = "android.net.action.PROMPT_UNVALIDATED";
263    field public static final int BLOCKED_METERED_REASON_ADMIN_DISABLED = 262144; // 0x40000
264    field public static final int BLOCKED_METERED_REASON_DATA_SAVER = 65536; // 0x10000
265    field public static final int BLOCKED_METERED_REASON_MASK = -65536; // 0xffff0000
266    field public static final int BLOCKED_METERED_REASON_USER_RESTRICTED = 131072; // 0x20000
267    field public static final int BLOCKED_REASON_APP_STANDBY = 4; // 0x4
268    field public static final int BLOCKED_REASON_BATTERY_SAVER = 1; // 0x1
269    field public static final int BLOCKED_REASON_DOZE = 2; // 0x2
270    field public static final int BLOCKED_REASON_LOCKDOWN_VPN = 16; // 0x10
271    field public static final int BLOCKED_REASON_NONE = 0; // 0x0
272    field public static final int BLOCKED_REASON_RESTRICTED_MODE = 8; // 0x8
273    field public static final int PROFILE_NETWORK_PREFERENCE_DEFAULT = 0; // 0x0
274    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE = 1; // 0x1
275  }
276
277  public static class ConnectivityManager.NetworkCallback {
278    method public void onBlockedStatusChanged(@NonNull android.net.Network, int);
279  }
280
281  public class ConnectivitySettingsManager {
282    method public static void clearGlobalProxy(@NonNull android.content.Context);
283    method @Nullable public static String getCaptivePortalHttpUrl(@NonNull android.content.Context);
284    method public static int getCaptivePortalMode(@NonNull android.content.Context, int);
285    method @NonNull public static java.time.Duration getConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
286    method @NonNull public static android.util.Range<java.lang.Integer> getDnsResolverSampleRanges(@NonNull android.content.Context);
287    method @NonNull public static java.time.Duration getDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
288    method public static int getDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, int);
289    method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context);
290    method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
291    method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
292    method @NonNull public static java.util.Set<java.lang.Integer> getMobileDataPreferredUids(@NonNull android.content.Context);
293    method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context);
294    method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context);
295    method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int);
296    method @NonNull public static java.time.Duration getNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
297    method @NonNull public static String getPrivateDnsDefaultMode(@NonNull android.content.Context);
298    method @Nullable public static String getPrivateDnsHostname(@NonNull android.content.Context);
299    method public static int getPrivateDnsMode(@NonNull android.content.Context);
300    method @NonNull public static java.util.Set<java.lang.Integer> getUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context);
301    method public static boolean getWifiAlwaysRequested(@NonNull android.content.Context, boolean);
302    method @NonNull public static java.time.Duration getWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
303    method public static void setCaptivePortalHttpUrl(@NonNull android.content.Context, @Nullable String);
304    method public static void setCaptivePortalMode(@NonNull android.content.Context, int);
305    method public static void setConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
306    method public static void setDnsResolverSampleRanges(@NonNull android.content.Context, @NonNull android.util.Range<java.lang.Integer>);
307    method public static void setDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
308    method public static void setDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, @IntRange(from=0, to=100) int);
309    method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo);
310    method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
311    method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
312    method public static void setMobileDataPreferredUids(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
313    method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int);
314    method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String);
315    method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int);
316    method public static void setNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
317    method public static void setPrivateDnsDefaultMode(@NonNull android.content.Context, @NonNull int);
318    method public static void setPrivateDnsHostname(@NonNull android.content.Context, @Nullable String);
319    method public static void setPrivateDnsMode(@NonNull android.content.Context, int);
320    method public static void setUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
321    method public static void setWifiAlwaysRequested(@NonNull android.content.Context, boolean);
322    method public static void setWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
323    field public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; // 0x2
324    field public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; // 0x0
325    field public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; // 0x1
326    field public static final int NETWORK_AVOID_BAD_WIFI_AVOID = 2; // 0x2
327    field public static final int NETWORK_AVOID_BAD_WIFI_IGNORE = 0; // 0x0
328    field public static final int NETWORK_AVOID_BAD_WIFI_PROMPT = 1; // 0x1
329    field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1
330    field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2
331    field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3
332  }
333
334  public final class EthernetNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
335    ctor public EthernetNetworkSpecifier(@NonNull String);
336    method public int describeContents();
337    method @Nullable public String getInterfaceName();
338    method public void writeToParcel(@NonNull android.os.Parcel, int);
339    field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkSpecifier> CREATOR;
340  }
341
342  public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable {
343    method public int getResourceId();
344  }
345
346  public final class NetworkAgentConfig implements android.os.Parcelable {
347    method @Nullable public String getSubscriberId();
348    method public boolean isBypassableVpn();
349  }
350
351  public static final class NetworkAgentConfig.Builder {
352    method @NonNull public android.net.NetworkAgentConfig.Builder setBypassableVpn(boolean);
353    method @NonNull public android.net.NetworkAgentConfig.Builder setSubscriberId(@Nullable String);
354  }
355
356  public final class NetworkCapabilities implements android.os.Parcelable {
357    method @Nullable public java.util.Set<android.util.Range<java.lang.Integer>> getUids();
358    method public boolean hasForbiddenCapability(int);
359    field public static final long REDACT_ALL = -1L; // 0xffffffffffffffffL
360    field public static final long REDACT_FOR_ACCESS_FINE_LOCATION = 1L; // 0x1L
361    field public static final long REDACT_FOR_LOCAL_MAC_ADDRESS = 2L; // 0x2L
362    field public static final long REDACT_FOR_NETWORK_SETTINGS = 4L; // 0x4L
363    field public static final long REDACT_NONE = 0L; // 0x0L
364    field public static final int TRANSPORT_TEST = 7; // 0x7
365  }
366
367  public static final class NetworkCapabilities.Builder {
368    method @NonNull public android.net.NetworkCapabilities.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
369  }
370
371  public class NetworkPolicyManager {
372    method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public int getMultipathPreference(@NonNull android.net.Network);
373    method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public int getRestrictBackgroundStatus(int);
374    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidNetworkingBlocked(int, boolean);
375    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidRestrictedOnMeteredNetworks(int);
376    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void registerNetworkPolicyCallback(@Nullable java.util.concurrent.Executor, @NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback);
377    method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void unregisterNetworkPolicyCallback(@NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback);
378  }
379
380  public static interface NetworkPolicyManager.NetworkPolicyCallback {
381    method public default void onUidBlockedReasonChanged(int, int);
382  }
383
384  public class NetworkRequest implements android.os.Parcelable {
385    method @NonNull public int[] getForbiddenCapabilities();
386    method public boolean hasForbiddenCapability(int);
387  }
388
389  public static class NetworkRequest.Builder {
390    method @NonNull public android.net.NetworkRequest.Builder addForbiddenCapability(int);
391    method @NonNull public android.net.NetworkRequest.Builder removeForbiddenCapability(int);
392    method @NonNull public android.net.NetworkRequest.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
393  }
394
395  public final class NetworkStateSnapshot implements android.os.Parcelable {
396    ctor public NetworkStateSnapshot(@NonNull android.net.Network, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, @Nullable String, int);
397    method public int describeContents();
398    method public int getLegacyType();
399    method @NonNull public android.net.LinkProperties getLinkProperties();
400    method @NonNull public android.net.Network getNetwork();
401    method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
402    method @Nullable public String getSubscriberId();
403    method public void writeToParcel(@NonNull android.os.Parcel, int);
404    field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStateSnapshot> CREATOR;
405  }
406
407  public class NetworkWatchlistManager {
408    method @Nullable public byte[] getWatchlistConfigHash();
409  }
410
411  public class PacProxyManager {
412    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);
413    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);
414    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);
415  }
416
417  public static interface PacProxyManager.PacProxyInstalledListener {
418    method public void onPacProxyInstalled(@Nullable android.net.Network, @NonNull android.net.ProxyInfo);
419  }
420
421  public final class Proxy {
422    method public static void setHttpProxyConfiguration(@Nullable android.net.ProxyInfo);
423  }
424
425  public final class TestNetworkInterface implements android.os.Parcelable {
426    ctor public TestNetworkInterface(@NonNull android.os.ParcelFileDescriptor, @NonNull String);
427    method public int describeContents();
428    method @NonNull public android.os.ParcelFileDescriptor getFileDescriptor();
429    method @NonNull public String getInterfaceName();
430    method public void writeToParcel(@NonNull android.os.Parcel, int);
431    field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkInterface> CREATOR;
432  }
433
434  public class TestNetworkManager {
435    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTapInterface();
436    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTunInterface(@NonNull java.util.Collection<android.net.LinkAddress>);
437    method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void setupTestNetwork(@NonNull String, @NonNull android.os.IBinder);
438    method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void teardownTestNetwork(@NonNull android.net.Network);
439    field public static final String TEST_TAP_PREFIX = "testtap";
440  }
441
442  public final class TestNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
443    ctor public TestNetworkSpecifier(@NonNull String);
444    method public int describeContents();
445    method @Nullable public String getInterfaceName();
446    method public void writeToParcel(@NonNull android.os.Parcel, int);
447    field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkSpecifier> CREATOR;
448  }
449
450  public final class TetheringConstants {
451    field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType";
452    field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback";
453    field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType";
454    field public static final String EXTRA_RUN_PROVISION = "extraRunProvision";
455    field public static final String EXTRA_SET_ALARM = "extraSetAlarm";
456  }
457
458  public class TetheringManager {
459    ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier<android.os.IBinder>);
460    method public int getLastTetherError(@NonNull String);
461    method @NonNull public String[] getTetherableBluetoothRegexs();
462    method @NonNull public String[] getTetherableIfaces();
463    method @NonNull public String[] getTetherableUsbRegexs();
464    method @NonNull public String[] getTetherableWifiRegexs();
465    method @NonNull public String[] getTetheredIfaces();
466    method @NonNull public String[] getTetheringErroredIfaces();
467    method public boolean isTetheringSupported();
468    method public boolean isTetheringSupported(@NonNull String);
469    method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean);
470    method @Deprecated public int setUsbTethering(boolean);
471    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);
472    method @Deprecated public int tether(@NonNull String);
473    method @Deprecated public int untether(@NonNull String);
474  }
475
476  public static interface TetheringManager.TetheringEventCallback {
477    method @Deprecated public default void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps);
478  }
479
480  @Deprecated public static class TetheringManager.TetheringInterfaceRegexps {
481    method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs();
482    method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs();
483    method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs();
484  }
485
486  public interface TransportInfo {
487    method public default long getApplicableRedactions();
488    method @NonNull public default android.net.TransportInfo makeCopy(long);
489  }
490
491  public final class UnderlyingNetworkInfo implements android.os.Parcelable {
492    ctor public UnderlyingNetworkInfo(int, @NonNull String, @NonNull java.util.List<java.lang.String>);
493    method public int describeContents();
494    method @NonNull public String getInterface();
495    method public int getOwnerUid();
496    method @NonNull public java.util.List<java.lang.String> getUnderlyingInterfaces();
497    method public void writeToParcel(@NonNull android.os.Parcel, int);
498    field @NonNull public static final android.os.Parcelable.Creator<android.net.UnderlyingNetworkInfo> CREATOR;
499  }
500
501  public class VpnManager {
502    field public static final int TYPE_VPN_LEGACY = 3; // 0x3
503    field public static final int TYPE_VPN_NONE = -1; // 0xffffffff
504    field public static final int TYPE_VPN_OEM = 4; // 0x4
505    field public static final int TYPE_VPN_PLATFORM = 2; // 0x2
506    field public static final int TYPE_VPN_SERVICE = 1; // 0x1
507  }
508
509  public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
510    ctor public VpnTransportInfo(int, @Nullable String);
511    method public int describeContents();
512    method @Nullable public String getSessionId();
513    method public int getType();
514    method @NonNull public android.net.VpnTransportInfo makeCopy(long);
515    method public void writeToParcel(@NonNull android.os.Parcel, int);
516    field @NonNull public static final android.os.Parcelable.Creator<android.net.VpnTransportInfo> CREATOR;
517  }
518
519}
520
521package android.os {
522
523  public final class BatteryStatsManager {
524    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;
525  }
526
527  public class Binder implements android.os.IBinder {
528    method public final void markVintfStability();
529  }
530
531  public class Build {
532    method public static boolean isDebuggable();
533  }
534
535  public static class Build.VERSION {
536    field public static final int DEVICE_INITIAL_SDK_INT;
537  }
538
539  public interface Parcelable {
540    method public default int getStability();
541  }
542
543  public class Process {
544    field public static final int VPN_UID = 1016; // 0x3f8
545  }
546
547  public class StatsFrameworkInitializer {
548    method public static void registerServiceWrappers();
549    method public static void setStatsServiceManager(@NonNull android.os.StatsServiceManager);
550  }
551
552  public class StatsServiceManager {
553    method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsCompanionServiceRegisterer();
554    method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsManagerServiceRegisterer();
555    method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsdServiceRegisterer();
556  }
557
558  public static class StatsServiceManager.ServiceNotFoundException extends java.lang.Exception {
559    ctor public StatsServiceManager.ServiceNotFoundException(@NonNull String);
560  }
561
562  public static final class StatsServiceManager.ServiceRegisterer {
563    method @Nullable public android.os.IBinder get();
564    method @Nullable public android.os.IBinder getOrThrow() throws android.os.StatsServiceManager.ServiceNotFoundException;
565  }
566
567}
568
569package android.os.storage {
570
571  public class StorageManager {
572    method public void notifyAppIoBlocked(@NonNull java.util.UUID, int, int, int);
573    method public void notifyAppIoResumed(@NonNull java.util.UUID, int, int, int);
574    field public static final int APP_IO_BLOCKED_REASON_TRANSCODING = 1; // 0x1
575    field public static final int APP_IO_BLOCKED_REASON_UNKNOWN = 0; // 0x0
576  }
577
578  public final class StorageVolume implements android.os.Parcelable {
579    method @NonNull public android.os.UserHandle getOwner();
580  }
581
582}
583
584package android.provider {
585
586  public final class DeviceConfig {
587    field public static final String NAMESPACE_ALARM_MANAGER = "alarm_manager";
588    field public static final String NAMESPACE_APP_STANDBY = "app_standby";
589    field public static final String NAMESPACE_DEVICE_IDLE = "device_idle";
590  }
591
592}
593
594package android.scheduling {
595
596  public class SchedulingFrameworkInitializer {
597    method public static void registerServiceWrappers();
598  }
599
600}
601
602package android.system {
603
604  public final class NetlinkSocketAddress extends java.net.SocketAddress {
605    ctor public NetlinkSocketAddress(int, int);
606    method public int getGroupsMask();
607    method public int getPortId();
608  }
609
610  public final class Os {
611    method @Nullable public static android.system.StructCapUserData[] capget(@NonNull android.system.StructCapUserHeader) throws android.system.ErrnoException;
612    method public static void capset(@NonNull android.system.StructCapUserHeader, @NonNull android.system.StructCapUserData[]) throws android.system.ErrnoException;
613    method public static int getpgid(int) throws android.system.ErrnoException;
614    method @Nullable public static android.system.StructRlimit getrlimit(int) throws android.system.ErrnoException;
615    method public static int getsockoptInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
616    method @Nullable public static android.system.StructLinger getsockoptLinger(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
617    method public static int ioctlInt(@NonNull java.io.FileDescriptor, int) throws android.system.ErrnoException;
618    method @Nullable public static java.io.FileDescriptor[] pipe2(int) throws android.system.ErrnoException;
619    method @Nullable public static String realpath(@Nullable String) throws android.system.ErrnoException;
620    method public static void setpgid(int, int) throws android.system.ErrnoException;
621    method public static void setregid(int, int) throws android.system.ErrnoException;
622    method public static void setreuid(int, int) throws android.system.ErrnoException;
623    method public static void setsockoptIfreq(@NonNull java.io.FileDescriptor, int, int, @Nullable String) throws android.system.ErrnoException;
624    method public static void setsockoptLinger(@NonNull java.io.FileDescriptor, int, int, @NonNull android.system.StructLinger) throws android.system.ErrnoException;
625    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;
626    method public static void unlink(@Nullable String) throws android.system.ErrnoException;
627  }
628
629  public final class OsConstants {
630    method public static int CAP_TO_INDEX(int);
631    method public static int CAP_TO_MASK(int);
632    field public static final int ARPHRD_LOOPBACK;
633    field public static final int EUSERS;
634    field public static final int MAP_POPULATE;
635    field public static final int O_DIRECT;
636    field public static final int PR_CAP_AMBIENT;
637    field public static final int PR_CAP_AMBIENT_RAISE;
638    field public static final int RLIMIT_NOFILE;
639    field public static final int RTMGRP_IPV4_IFADDR;
640    field public static final int SPLICE_F_MORE;
641    field public static final int SPLICE_F_MOVE;
642    field public static final int TIOCOUTQ;
643    field public static final int UDP_ENCAP;
644    field public static final int UDP_ENCAP_ESPINUDP;
645    field public static final int XATTR_CREATE;
646    field public static final int XATTR_REPLACE;
647    field public static final int _LINUX_CAPABILITY_VERSION_3;
648  }
649
650  public final class PacketSocketAddress extends java.net.SocketAddress {
651    ctor public PacketSocketAddress(int, int, byte[]);
652  }
653
654  public final class StructCapUserData {
655    ctor public StructCapUserData(int, int, int);
656    field public final int effective;
657    field public final int inheritable;
658    field public final int permitted;
659  }
660
661  public final class StructCapUserHeader {
662    ctor public StructCapUserHeader(int, int);
663  }
664
665  public final class StructLinger {
666    ctor public StructLinger(int, int);
667    method public boolean isOn();
668    field public final int l_linger;
669  }
670
671  public final class StructRlimit {
672    field public final long rlim_cur;
673  }
674
675  public final class UnixSocketAddress extends java.net.SocketAddress {
676    method public static android.system.UnixSocketAddress createFileSystem(String);
677  }
678
679  public final class VmSocketAddress extends java.net.SocketAddress {
680    ctor public VmSocketAddress(int, int);
681    method public int getSvmCid();
682    method public int getSvmPort();
683  }
684
685}
686
687package android.telephony {
688
689  public abstract class CellSignalStrength {
690    method public static int getNumSignalStrengthLevels();
691  }
692
693  public class TelephonyManager {
694    method @NonNull public static int[] getAllNetworkTypes();
695  }
696
697}
698
699package android.util {
700
701  public class AtomicFile {
702    ctor public AtomicFile(@NonNull java.io.File, @Nullable android.util.SystemConfigFileCommitEventLogger);
703  }
704
705  public final class Log {
706    method public static int logToRadioBuffer(int, @Nullable String, @Nullable String);
707  }
708
709  public class SystemConfigFileCommitEventLogger {
710    ctor public SystemConfigFileCommitEventLogger(@NonNull String);
711    method public void setStartTime(long);
712  }
713
714}
715
716package com.android.okhttp.internalandroidapi {
717
718  public final class AndroidResponseCacheAdapter {
719    ctor public AndroidResponseCacheAdapter(@NonNull com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder);
720    method public void close() throws java.io.IOException;
721    method public void delete() throws java.io.IOException;
722    method public void flush() throws java.io.IOException;
723    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;
724    method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder();
725    method public int getHitCount();
726    method public long getMaxSize();
727    method public int getNetworkCount();
728    method public int getRequestCount();
729    method public long getSize() throws java.io.IOException;
730    method @Nullable public java.net.CacheRequest put(@NonNull java.net.URI, @NonNull java.net.URLConnection) throws java.io.IOException;
731  }
732
733  public interface HasCacheHolder {
734    method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder();
735  }
736
737  public static final class HasCacheHolder.CacheHolder {
738    method @NonNull public static com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder create(@NonNull java.io.File, long);
739    method public boolean isEquivalent(@NonNull java.io.File, long);
740  }
741
742}
743
744package dalvik.annotation.codegen {
745
746  @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 {
747    method public abstract int presentAfter();
748    method public abstract Class<?> returnType();
749  }
750
751  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public static @interface CovariantReturnType.CovariantReturnTypes {
752    method public abstract dalvik.annotation.codegen.CovariantReturnType[] value();
753  }
754
755}
756
757package dalvik.annotation.optimization {
758
759  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface CriticalNative {
760  }
761
762  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface FastNative {
763  }
764
765}
766
767package dalvik.system {
768
769  public final class AnnotatedStackTraceElement {
770    method @Nullable public Object getBlockedOn();
771    method @Nullable public Object[] getHeldLocks();
772    method @NonNull public StackTraceElement getStackTraceElement();
773  }
774
775  public class AppSpecializationHooks {
776    method public static void handleCompatChangesBeforeBindingApplication();
777  }
778
779  public class BaseDexClassLoader extends java.lang.ClassLoader {
780    method public void addDexPath(@Nullable String);
781    method public void addNativePath(@NonNull java.util.Collection<java.lang.String>);
782    method @NonNull public String getLdLibraryPath();
783    method public void reportClassLoaderChain();
784    method public static void setReporter(@Nullable dalvik.system.BaseDexClassLoader.Reporter);
785  }
786
787  public static interface BaseDexClassLoader.Reporter {
788    method public void report(@NonNull java.util.Map<java.lang.String,java.lang.String>);
789  }
790
791  public final class BlockGuard {
792    method @NonNull public static dalvik.system.BlockGuard.Policy getThreadPolicy();
793    method @NonNull public static dalvik.system.BlockGuard.VmPolicy getVmPolicy();
794    method public static void setThreadPolicy(@NonNull dalvik.system.BlockGuard.Policy);
795    method public static void setVmPolicy(@NonNull dalvik.system.BlockGuard.VmPolicy);
796    field public static final dalvik.system.BlockGuard.Policy LAX_POLICY;
797    field public static final dalvik.system.BlockGuard.VmPolicy LAX_VM_POLICY;
798  }
799
800  public static interface BlockGuard.Policy {
801    method public int getPolicyMask();
802    method public void onReadFromDisk();
803    method public void onUnbufferedIO();
804    method public void onWriteToDisk();
805  }
806
807  public static interface BlockGuard.VmPolicy {
808    method public void onPathAccess(@NonNull String);
809  }
810
811  public final class CloseGuard {
812    method public void close();
813    method public static dalvik.system.CloseGuard get();
814    method public static dalvik.system.CloseGuard.Reporter getReporter();
815    method public void open(String);
816    method public void openWithCallSite(String, String);
817    method public static void setEnabled(boolean);
818    method public static void setReporter(dalvik.system.CloseGuard.Reporter);
819    method public void warnIfOpen();
820  }
821
822  public static interface CloseGuard.Reporter {
823    method public void report(String, Throwable);
824    method public default void report(String);
825  }
826
827  public final class DelegateLastClassLoader extends dalvik.system.PathClassLoader {
828    ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[]);
829  }
830
831  @Deprecated public final class DexFile {
832    method @Deprecated @NonNull public static dalvik.system.DexFile.OptimizationInfo getDexFileOptimizationInfo(@NonNull String, @NonNull String) throws java.io.FileNotFoundException;
833    method @Deprecated @Nullable public static String[] getDexFileOutputPaths(@NonNull String, @NonNull String) throws java.io.FileNotFoundException;
834    method @Deprecated public static int getDexOptNeeded(@NonNull String, @NonNull String, @NonNull String, @Nullable String, boolean, boolean) throws java.io.FileNotFoundException, java.io.IOException;
835    method @Deprecated @NonNull public static String getSafeModeCompilerFilter(@NonNull String);
836    method @Deprecated public static boolean isProfileGuidedCompilerFilter(@NonNull String);
837    method @Deprecated public static boolean isValidCompilerFilter(@NonNull String);
838    field @Deprecated public static final int DEX2OAT_FOR_FILTER = 3; // 0x3
839    field @Deprecated public static final int NO_DEXOPT_NEEDED = 0; // 0x0
840  }
841
842  @Deprecated public static final class DexFile.OptimizationInfo {
843    method @Deprecated @NonNull public String getReason();
844    method @Deprecated @NonNull public String getStatus();
845  }
846
847  public class PathClassLoader extends dalvik.system.BaseDexClassLoader {
848    ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[]);
849  }
850
851  public final class RuntimeHooks {
852    method public static void setTimeZoneIdSupplier(@NonNull java.util.function.Supplier<java.lang.String>);
853    method public static void setUncaughtExceptionPreHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler);
854  }
855
856  public abstract class SocketTagger {
857    ctor public SocketTagger();
858    method public static dalvik.system.SocketTagger get();
859    method public static void set(dalvik.system.SocketTagger);
860    method public abstract void tag(java.io.FileDescriptor) throws java.net.SocketException;
861    method public final void tag(java.net.Socket) throws java.net.SocketException;
862    method public final void tag(java.net.DatagramSocket) throws java.net.SocketException;
863    method public abstract void untag(java.io.FileDescriptor) throws java.net.SocketException;
864    method public final void untag(java.net.Socket) throws java.net.SocketException;
865    method public final void untag(java.net.DatagramSocket) throws java.net.SocketException;
866  }
867
868  public final class VMDebug {
869    method public static void attachAgent(String, ClassLoader) throws java.io.IOException;
870    method public static long countInstancesOfClass(Class, boolean);
871    method public static long[] countInstancesOfClasses(Class[], boolean);
872    method public static void dumpHprofData(String) throws java.io.IOException;
873    method public static void dumpHprofData(String, java.io.FileDescriptor) throws java.io.IOException;
874    method public static void dumpHprofDataDdms();
875    method public static void dumpReferenceTables();
876    method public static int getAllocCount(int);
877    method @dalvik.annotation.optimization.FastNative public static int getLoadedClassCount();
878    method public static int getMethodTracingMode();
879    method public static String getRuntimeStat(String);
880    method public static java.util.Map<java.lang.String,java.lang.String> getRuntimeStats();
881    method public static String[] getVmFeatureList();
882    method @dalvik.annotation.optimization.FastNative public static boolean isDebuggerConnected();
883    method @dalvik.annotation.optimization.FastNative public static boolean isDebuggingEnabled();
884    method @dalvik.annotation.optimization.FastNative public static long lastDebuggerActivity();
885    method @dalvik.annotation.optimization.FastNative public static void printLoadedClasses(int);
886    method public static void resetAllocCount(int);
887    method public static void setAllocTrackerStackDepth(int);
888    method public static void startAllocCounting();
889    method public static void startMethodTracing(String, int, int, boolean, int);
890    method public static void startMethodTracing(String, java.io.FileDescriptor, int, int, boolean, int, boolean);
891    method public static void startMethodTracingDdms(int, int, boolean, int);
892    method public static void stopAllocCounting();
893    method public static void stopMethodTracing();
894    method @dalvik.annotation.optimization.FastNative public static long threadCpuTimeNanos();
895    field public static final int KIND_ALL_COUNTS = -1; // 0xffffffff
896    field public static final int KIND_GLOBAL_ALLOCATED_BYTES = 2; // 0x2
897    field public static final int KIND_GLOBAL_ALLOCATED_OBJECTS = 1; // 0x1
898    field public static final int KIND_GLOBAL_CLASS_INIT_COUNT = 32; // 0x20
899    field public static final int KIND_GLOBAL_CLASS_INIT_TIME = 64; // 0x40
900    field public static final int KIND_GLOBAL_FREED_BYTES = 8; // 0x8
901    field public static final int KIND_GLOBAL_FREED_OBJECTS = 4; // 0x4
902    field public static final int KIND_GLOBAL_GC_INVOCATIONS = 16; // 0x10
903    field public static final int KIND_THREAD_ALLOCATED_BYTES = 131072; // 0x20000
904    field public static final int KIND_THREAD_ALLOCATED_OBJECTS = 65536; // 0x10000
905    field public static final int KIND_THREAD_GC_INVOCATIONS = 1048576; // 0x100000
906    field public static final int TRACE_COUNT_ALLOCS = 1; // 0x1
907  }
908
909  public final class VMRuntime {
910    method @dalvik.annotation.optimization.FastNative public long addressOf(Object);
911    method public static void bootCompleted();
912    method public void clampGrowthLimit();
913    method public void clearGrowthLimit();
914    method public static String getCurrentInstructionSet();
915    method public static String getInstructionSet(String);
916    method public static dalvik.system.VMRuntime getRuntime();
917    method public int getTargetSdkVersion();
918    method @dalvik.annotation.optimization.FastNative public boolean is64Bit();
919    method public static boolean is64BitAbi(String);
920    method public static boolean is64BitInstructionSet(String);
921    method @dalvik.annotation.optimization.FastNative public boolean isCheckJniEnabled();
922    method @dalvik.annotation.optimization.FastNative public boolean isNativeDebuggable();
923    method public static boolean isValidClassLoaderContext(String);
924    method @dalvik.annotation.optimization.FastNative public Object newNonMovableArray(Class<?>, int);
925    method @dalvik.annotation.optimization.FastNative public Object newUnpaddedArray(Class<?>, int);
926    method public void notifyStartupCompleted();
927    method public void preloadDexCaches();
928    method public static void registerAppInfo(String, String, String, String[], int);
929    method public void registerNativeAllocation(long);
930    method @Deprecated public void registerNativeAllocation(int);
931    method public void registerNativeFree(long);
932    method @Deprecated public void registerNativeFree(int);
933    method public static void registerSensitiveThread();
934    method public void requestConcurrentGC();
935    method public static void resetJitCounters();
936    method public static void setDedupeHiddenApiWarnings(boolean);
937    method public void setDisabledCompatChanges(long[]);
938    method public void setHiddenApiAccessLogSamplingRate(int);
939    method public void setHiddenApiExemptions(String[]);
940    method public static void setHiddenApiUsageLogger(dalvik.system.VMRuntime.HiddenApiUsageLogger);
941    method public static void setNonSdkApiUsageConsumer(java.util.function.Consumer<java.lang.String>);
942    method public static void setProcessDataDirectory(String);
943    method public static void setProcessPackageName(String);
944    method public void setTargetSdkVersion(int);
945    method public void updateProcessState(int);
946    method public String vmInstructionSet();
947    method public String vmLibrary();
948    field public static final int CODE_PATH_TYPE_PRIMARY_APK = 1; // 0x1
949    field public static final int CODE_PATH_TYPE_SECONDARY_DEX = 4; // 0x4
950    field public static final int CODE_PATH_TYPE_SPLIT_APK = 2; // 0x2
951    field public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000; // 0x2710
952  }
953
954  public static interface VMRuntime.HiddenApiUsageLogger {
955    method public void hiddenApiUsed(int, String, String, int, boolean);
956    field public static final int ACCESS_METHOD_JNI = 2; // 0x2
957    field public static final int ACCESS_METHOD_LINKING = 3; // 0x3
958    field public static final int ACCESS_METHOD_NONE = 0; // 0x0
959    field public static final int ACCESS_METHOD_REFLECTION = 1; // 0x1
960  }
961
962  public final class VMStack {
963    method @Nullable @dalvik.annotation.optimization.FastNative public static dalvik.system.AnnotatedStackTraceElement[] getAnnotatedThreadStackTrace(Thread);
964  }
965
966  public final class ZygoteHooks {
967    method public static void gcAndFinalize();
968    method public static boolean isIndefiniteThreadSuspensionSafe();
969    method public static void onBeginPreload();
970    method public static void onEndPreload();
971    method public static void postForkChild(int, boolean, boolean, String);
972    method public static void postForkCommon();
973    method public static void postForkSystemServer(int);
974    method public static void preFork();
975    method public static void startZygoteNoThreadCreation();
976    method public static void stopZygoteNoThreadCreation();
977  }
978
979}
980
981package java.io {
982
983  public final class FileDescriptor {
984    method public int getInt$();
985    method public void setInt$(int);
986  }
987
988  public class FileInputStream extends java.io.InputStream {
989    ctor public FileInputStream(java.io.FileDescriptor, boolean);
990  }
991
992}
993
994package java.lang {
995
996  public class Thread implements java.lang.Runnable {
997    method public static java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionPreHandler();
998    method public static void setUncaughtExceptionPreHandler(java.lang.Thread.UncaughtExceptionHandler);
999  }
1000
1001}
1002
1003package java.net {
1004
1005  public class DatagramSocket implements java.io.Closeable {
1006    method public java.io.FileDescriptor getFileDescriptor$();
1007  }
1008
1009  public final class Inet4Address extends java.net.InetAddress {
1010    field public static final java.net.InetAddress ALL;
1011    field public static final java.net.InetAddress ANY;
1012    field public static final java.net.InetAddress LOOPBACK;
1013  }
1014
1015  public final class Inet6Address extends java.net.InetAddress {
1016    field public static final java.net.InetAddress ANY;
1017    field public static final java.net.InetAddress LOOPBACK;
1018  }
1019
1020  public class InetAddress implements java.io.Serializable {
1021    method public static void clearDnsCache();
1022    method @NonNull public static java.net.InetAddress[] getAllByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException;
1023    method @NonNull public static java.net.InetAddress getByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException;
1024    method @Deprecated public static boolean isNumeric(String);
1025    method @Deprecated public static java.net.InetAddress parseNumericAddress(String);
1026  }
1027
1028  public class InetSocketAddress extends java.net.SocketAddress {
1029    ctor public InetSocketAddress();
1030  }
1031
1032  public class ServerSocket implements java.io.Closeable {
1033    method public java.net.SocketImpl getImpl() throws java.net.SocketException;
1034  }
1035
1036  public class Socket implements java.io.Closeable {
1037    method public java.io.FileDescriptor getFileDescriptor$();
1038  }
1039
1040  public abstract class SocketImpl implements java.net.SocketOptions {
1041    method public java.io.FileDescriptor getFD$();
1042  }
1043
1044}
1045
1046package java.nio {
1047
1048  public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer> {
1049    method public void setAccessible(boolean);
1050  }
1051
1052  public class DirectByteBuffer extends java.nio.MappedByteBuffer {
1053    ctor public DirectByteBuffer(int, long, java.io.FileDescriptor, Runnable, boolean);
1054    method public final long address();
1055    method public final void setAccessible(boolean);
1056  }
1057
1058  public final class NIOAccess {
1059    method public static Object getBaseArray(java.nio.Buffer);
1060    method public static int getBaseArrayOffset(java.nio.Buffer);
1061  }
1062
1063  public final class NioUtils {
1064    method public static void freeDirectBuffer(java.nio.ByteBuffer);
1065    method public static byte[] unsafeArray(java.nio.ByteBuffer);
1066    method public static int unsafeArrayOffset(java.nio.ByteBuffer);
1067  }
1068
1069}
1070
1071package java.security {
1072
1073  public abstract class Provider extends java.util.Properties {
1074    method public void warmUpServiceProvision();
1075  }
1076
1077  public abstract class Signature extends java.security.SignatureSpi {
1078    method public java.security.SignatureSpi getCurrentSpi();
1079  }
1080
1081}
1082
1083package java.text {
1084
1085  public abstract class DateFormat extends java.text.Format {
1086    method public static final void set24HourTimePref(Boolean);
1087  }
1088
1089}
1090
1091package java.util {
1092
1093  public class LinkedHashMap<K, V> extends java.util.HashMap<K,V> implements java.util.Map<K,V> {
1094    method public java.util.Map.Entry<K,V> eldest();
1095  }
1096
1097}
1098
1099package java.util.zip {
1100
1101  public class ZipEntry implements java.lang.Cloneable {
1102    method public long getDataOffset();
1103  }
1104
1105}
1106
1107package javax.crypto {
1108
1109  public class Cipher {
1110    method public javax.crypto.CipherSpi getCurrentSpi();
1111  }
1112
1113  public class Mac implements java.lang.Cloneable {
1114    method public javax.crypto.MacSpi getCurrentSpi();
1115  }
1116
1117}
1118
1119package javax.net.ssl {
1120
1121  public abstract class HttpsURLConnection extends java.net.HttpURLConnection {
1122    method public static javax.net.ssl.HostnameVerifier getStrictHostnameVerifier();
1123  }
1124
1125}
1126
1127package libcore.content.type {
1128
1129  public final class MimeMap {
1130    method @NonNull public libcore.content.type.MimeMap.Builder buildUpon();
1131    method @NonNull public static libcore.content.type.MimeMap.Builder builder();
1132    method @NonNull public java.util.Set<java.lang.String> extensions();
1133    method @NonNull public static libcore.content.type.MimeMap getDefault();
1134    method @Nullable public String guessExtensionFromMimeType(@Nullable String);
1135    method @Nullable public String guessMimeTypeFromExtension(@Nullable String);
1136    method public boolean hasExtension(@Nullable String);
1137    method public boolean hasMimeType(@Nullable String);
1138    method @NonNull public java.util.Set<java.lang.String> mimeTypes();
1139    method public static void setDefaultSupplier(@NonNull java.util.function.Supplier<libcore.content.type.MimeMap>);
1140  }
1141
1142  public static final class MimeMap.Builder {
1143    method @NonNull public libcore.content.type.MimeMap.Builder addMimeMapping(@NonNull String, @NonNull java.util.List<java.lang.String>);
1144    method @NonNull public libcore.content.type.MimeMap build();
1145  }
1146
1147}
1148
1149package libcore.io {
1150
1151  public class ForwardingOs implements libcore.io.Os {
1152    ctor protected ForwardingOs(@NonNull libcore.io.Os);
1153    method public boolean access(@Nullable String, int) throws android.system.ErrnoException;
1154    method public java.io.FileDescriptor open(@Nullable String, int, int) throws android.system.ErrnoException;
1155    method public void remove(@Nullable String) throws android.system.ErrnoException;
1156    method public void rename(@Nullable String, @Nullable String) throws android.system.ErrnoException;
1157    method @Nullable public android.system.StructStat stat(@Nullable String) throws android.system.ErrnoException;
1158    method public void unlink(@Nullable String) throws android.system.ErrnoException;
1159  }
1160
1161  public final class IoBridge {
1162    method public static void closeAndSignalBlockedThreads(@NonNull java.io.FileDescriptor) throws java.io.IOException;
1163    method @NonNull public static java.io.FileDescriptor open(@NonNull String, int) throws java.io.FileNotFoundException;
1164    method public static int read(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException;
1165    method public static void write(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException;
1166  }
1167
1168  public final class IoUtils {
1169    method public static int acquireRawFd(@NonNull java.io.FileDescriptor);
1170    method public static void close(@Nullable java.io.FileDescriptor) throws java.io.IOException;
1171    method public static void closeQuietly(@Nullable AutoCloseable);
1172    method public static void closeQuietly(@Nullable java.io.FileDescriptor);
1173    method public static void closeQuietly(@Nullable java.net.Socket);
1174    method @NonNull public static byte[] readFileAsByteArray(@NonNull String) throws java.io.IOException;
1175    method @NonNull public static String readFileAsString(@NonNull String) throws java.io.IOException;
1176    method public static void setBlocking(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException;
1177    method public static void setFdOwner(@NonNull java.io.FileDescriptor, @NonNull Object);
1178  }
1179
1180  public final class Memory {
1181    method public static void memmove(@NonNull Object, int, @NonNull Object, int, long);
1182    method public static int peekInt(@NonNull byte[], int, @NonNull java.nio.ByteOrder);
1183    method public static short peekShort(@NonNull byte[], int, @NonNull java.nio.ByteOrder);
1184    method public static void pokeInt(@NonNull byte[], int, int, @NonNull java.nio.ByteOrder);
1185    method public static void pokeLong(@NonNull byte[], int, long, @NonNull java.nio.ByteOrder);
1186    method public static void pokeShort(@NonNull byte[], int, short, @NonNull java.nio.ByteOrder);
1187  }
1188
1189  public interface Os {
1190    method public static boolean compareAndSetDefault(libcore.io.Os, libcore.io.Os);
1191    method public static libcore.io.Os getDefault();
1192  }
1193
1194  public final class Streams {
1195    method public static int copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException;
1196    method public static void readFully(@NonNull java.io.InputStream, @NonNull byte[]) throws java.io.IOException;
1197    method @NonNull public static byte[] readFully(@NonNull java.io.InputStream) throws java.io.IOException;
1198    method @NonNull public static String readFully(@NonNull java.io.Reader) throws java.io.IOException;
1199    method @NonNull public static byte[] readFullyNoClose(@NonNull java.io.InputStream) throws java.io.IOException;
1200    method public static int readSingleByte(@NonNull java.io.InputStream) throws java.io.IOException;
1201    method public static long skipByReading(@NonNull java.io.InputStream, long) throws java.io.IOException;
1202    method public static void writeSingleByte(@NonNull java.io.OutputStream, int) throws java.io.IOException;
1203  }
1204
1205}
1206
1207package libcore.net {
1208
1209  public class InetAddressUtils {
1210    method public static boolean isNumericAddress(String);
1211    method public static java.net.InetAddress parseNumericAddress(String);
1212  }
1213
1214  public abstract class NetworkSecurityPolicy {
1215    ctor public NetworkSecurityPolicy();
1216    method public static libcore.net.NetworkSecurityPolicy getInstance();
1217    method public abstract boolean isCertificateTransparencyVerificationRequired(String);
1218    method public abstract boolean isCleartextTrafficPermitted();
1219    method public abstract boolean isCleartextTrafficPermitted(String);
1220    method public static void setInstance(libcore.net.NetworkSecurityPolicy);
1221  }
1222
1223}
1224
1225package libcore.net.event {
1226
1227  public final class NetworkEventDispatcher {
1228    method public void dispatchNetworkConfigurationChange();
1229    method public static libcore.net.event.NetworkEventDispatcher getInstance();
1230  }
1231
1232}
1233
1234package libcore.net.http {
1235
1236  public interface Dns {
1237    method @NonNull public java.util.List<java.net.InetAddress> lookup(@Nullable String) throws java.net.UnknownHostException;
1238  }
1239
1240  public class HttpURLConnectionFactory {
1241    method @NonNull public static libcore.net.http.HttpURLConnectionFactory createInstance();
1242    method public java.net.URLConnection openConnection(@NonNull java.net.URL, @NonNull javax.net.SocketFactory, @NonNull java.net.Proxy) throws java.io.IOException;
1243    method public void setDns(@NonNull libcore.net.http.Dns);
1244    method public void setNewConnectionPool(int, long, @NonNull java.util.concurrent.TimeUnit);
1245  }
1246
1247}
1248
1249package libcore.util {
1250
1251  public final class EmptyArray {
1252    field @NonNull public static final boolean[] BOOLEAN;
1253    field @NonNull public static final byte[] BYTE;
1254    field @NonNull public static final float[] FLOAT;
1255    field @NonNull public static final int[] INT;
1256    field @NonNull public static final long[] LONG;
1257    field @NonNull public static final Object[] OBJECT;
1258    field @NonNull public static final String[] STRING;
1259  }
1260
1261  public final class FP16 {
1262    method public static short ceil(short);
1263    method public static int compare(short, short);
1264    method public static boolean equals(short, short);
1265    method public static short floor(short);
1266    method public static boolean greater(short, short);
1267    method public static boolean greaterEquals(short, short);
1268    method public static boolean isInfinite(short);
1269    method public static boolean isNaN(short);
1270    method public static boolean isNormalized(short);
1271    method public static boolean less(short, short);
1272    method public static boolean lessEquals(short, short);
1273    method public static short max(short, short);
1274    method public static short min(short, short);
1275    method public static short rint(short);
1276    method public static float toFloat(short);
1277    method public static short toHalf(float);
1278    method public static String toHexString(short);
1279    method public static short trunc(short);
1280    field public static final short EPSILON = 5120; // 0x1400
1281    field public static final int EXPONENT_BIAS = 15; // 0xf
1282    field public static final int EXPONENT_SHIFT = 10; // 0xa
1283    field public static final int EXPONENT_SIGNIFICAND_MASK = 32767; // 0x7fff
1284    field public static final short LOWEST_VALUE = -1025; // 0xfffffbff
1285    field public static final int MAX_EXPONENT = 15; // 0xf
1286    field public static final short MAX_VALUE = 31743; // 0x7bff
1287    field public static final int MIN_EXPONENT = -14; // 0xfffffff2
1288    field public static final short MIN_NORMAL = 1024; // 0x400
1289    field public static final short MIN_VALUE = 1; // 0x1
1290    field public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00
1291    field public static final short NEGATIVE_ZERO = -32768; // 0xffff8000
1292    field public static final short NaN = 32256; // 0x7e00
1293    field public static final short POSITIVE_INFINITY = 31744; // 0x7c00
1294    field public static final short POSITIVE_ZERO = 0; // 0x0
1295    field public static final int SHIFTED_EXPONENT_MASK = 31; // 0x1f
1296    field public static final int SIGNIFICAND_MASK = 1023; // 0x3ff
1297    field public static final int SIGN_MASK = 32768; // 0x8000
1298    field public static final int SIGN_SHIFT = 15; // 0xf
1299    field public static final int SIZE = 16; // 0x10
1300  }
1301
1302  public class HexEncoding {
1303    method public static byte[] decode(String) throws java.lang.IllegalArgumentException;
1304    method public static byte[] decode(String, boolean) throws java.lang.IllegalArgumentException;
1305    method public static byte[] decode(char[]) throws java.lang.IllegalArgumentException;
1306    method public static byte[] decode(char[], boolean) throws java.lang.IllegalArgumentException;
1307    method public static char[] encode(byte[]);
1308    method public static char[] encode(byte[], boolean);
1309    method public static char[] encode(byte[], int, int);
1310    method public static String encodeToString(byte, boolean);
1311    method public static String encodeToString(byte[]);
1312    method public static String encodeToString(byte[], boolean);
1313  }
1314
1315  public class NativeAllocationRegistry {
1316    ctor public NativeAllocationRegistry(@NonNull ClassLoader, long, long);
1317    method public static void applyFreeFunction(long, long);
1318    method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long, long);
1319    method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long);
1320    method public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull ClassLoader, long, long);
1321    method @NonNull public Runnable registerNativeAllocation(@NonNull Object, long);
1322  }
1323
1324  public class SneakyThrow {
1325    method public static void sneakyThrow(@NonNull Throwable);
1326  }
1327
1328  public class XmlObjectFactory {
1329    method @NonNull public static org.xml.sax.XMLReader newXMLReader();
1330    method @NonNull public static org.xmlpull.v1.XmlPullParser newXmlPullParser();
1331    method @NonNull public static org.xmlpull.v1.XmlSerializer newXmlSerializer();
1332  }
1333
1334}
1335
1336package org.apache.harmony.dalvik.ddmc {
1337
1338  public class Chunk {
1339    ctor public Chunk(int, byte[], int, int);
1340    ctor public Chunk(int, java.nio.ByteBuffer);
1341    field public int type;
1342  }
1343
1344  public abstract class ChunkHandler {
1345    ctor public ChunkHandler();
1346    method public static org.apache.harmony.dalvik.ddmc.Chunk createFailChunk(int, String);
1347    method public abstract org.apache.harmony.dalvik.ddmc.Chunk handleChunk(org.apache.harmony.dalvik.ddmc.Chunk);
1348    method public static String name(int);
1349    method public abstract void onConnected();
1350    method public abstract void onDisconnected();
1351    method public static int type(String);
1352    method public static java.nio.ByteBuffer wrapChunk(org.apache.harmony.dalvik.ddmc.Chunk);
1353    field public static final java.nio.ByteOrder CHUNK_ORDER;
1354  }
1355
1356  public final class DdmServer {
1357    method public static void registerHandler(int, org.apache.harmony.dalvik.ddmc.ChunkHandler);
1358    method public static void registrationComplete();
1359    method public static void sendChunk(org.apache.harmony.dalvik.ddmc.Chunk);
1360    method public static org.apache.harmony.dalvik.ddmc.ChunkHandler unregisterHandler(int);
1361  }
1362
1363  public final class DdmVmInternal {
1364    method public static void setRecentAllocationsTrackingEnabled(boolean);
1365    method public static void setThreadNotifyEnabled(boolean);
1366  }
1367
1368}
1369
1370package org.json {
1371
1372  public class JSONObject {
1373    method @NonNull public java.util.Set<java.lang.String> keySet();
1374  }
1375
1376}
1377
1378package sun.misc {
1379
1380  public class Cleaner extends java.lang.ref.PhantomReference<java.lang.Object> {
1381    method public void clean();
1382    method public static sun.misc.Cleaner create(Object, Runnable);
1383  }
1384
1385  public final class Unsafe {
1386    method public int arrayBaseOffset(Class);
1387    method public int arrayIndexScale(Class);
1388    method @dalvik.annotation.optimization.FastNative public void copyMemory(long, long, long);
1389    method @dalvik.annotation.optimization.FastNative public boolean getBoolean(Object, long);
1390    method @dalvik.annotation.optimization.FastNative public byte getByte(Object, long);
1391    method @dalvik.annotation.optimization.FastNative public byte getByte(long);
1392    method @dalvik.annotation.optimization.FastNative public double getDouble(Object, long);
1393    method @dalvik.annotation.optimization.FastNative public double getDouble(long);
1394    method @dalvik.annotation.optimization.FastNative public float getFloat(Object, long);
1395    method @dalvik.annotation.optimization.FastNative public float getFloat(long);
1396    method @dalvik.annotation.optimization.FastNative public int getInt(Object, long);
1397    method @dalvik.annotation.optimization.FastNative public int getInt(long);
1398    method @dalvik.annotation.optimization.FastNative public long getLong(Object, long);
1399    method @dalvik.annotation.optimization.FastNative public long getLong(long);
1400    method @dalvik.annotation.optimization.FastNative public Object getObject(Object, long);
1401    method public static sun.misc.Unsafe getUnsafe();
1402    method public long objectFieldOffset(java.lang.reflect.Field);
1403    method @dalvik.annotation.optimization.FastNative public void putBoolean(Object, long, boolean);
1404    method @dalvik.annotation.optimization.FastNative public void putByte(Object, long, byte);
1405    method @dalvik.annotation.optimization.FastNative public void putByte(long, byte);
1406    method @dalvik.annotation.optimization.FastNative public void putDouble(Object, long, double);
1407    method @dalvik.annotation.optimization.FastNative public void putDouble(long, double);
1408    method @dalvik.annotation.optimization.FastNative public void putFloat(Object, long, float);
1409    method @dalvik.annotation.optimization.FastNative public void putFloat(long, float);
1410    method @dalvik.annotation.optimization.FastNative public void putInt(Object, long, int);
1411    method @dalvik.annotation.optimization.FastNative public void putInt(long, int);
1412    method @dalvik.annotation.optimization.FastNative public void putLong(Object, long, long);
1413    method @dalvik.annotation.optimization.FastNative public void putLong(long, long);
1414    method @dalvik.annotation.optimization.FastNative public void putObject(Object, long, Object);
1415  }
1416
1417}
1418
1419package sun.security.jca {
1420
1421  public class Providers {
1422    method public static Object startJarVerification();
1423    method public static void stopJarVerification(Object);
1424  }
1425
1426}
1427
1428package sun.security.pkcs {
1429
1430  public class PKCS7 {
1431    ctor public PKCS7(java.io.InputStream) throws java.io.IOException, sun.security.pkcs.ParsingException;
1432    ctor public PKCS7(byte[]) throws sun.security.pkcs.ParsingException;
1433    method public java.security.cert.X509Certificate[] getCertificates();
1434    method public sun.security.pkcs.SignerInfo[] getSignerInfos();
1435    method public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, java.io.InputStream) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.SignatureException;
1436    method public sun.security.pkcs.SignerInfo[] verify(byte[]) throws java.security.NoSuchAlgorithmException, java.security.SignatureException;
1437  }
1438
1439  public class ParsingException extends java.io.IOException {
1440  }
1441
1442  public class SignerInfo {
1443    ctor public SignerInfo();
1444    method public java.util.ArrayList<java.security.cert.X509Certificate> getCertificateChain(sun.security.pkcs.PKCS7) throws java.io.IOException;
1445  }
1446
1447}
1448
1449package sun.security.util {
1450
1451  public final class ObjectIdentifier implements java.io.Serializable {
1452    ctor public ObjectIdentifier(String) throws java.io.IOException;
1453  }
1454
1455}
1456
1457package sun.security.x509 {
1458
1459  public class AlgorithmId implements java.io.Serializable {
1460    ctor public AlgorithmId(sun.security.util.ObjectIdentifier);
1461    method public String getName();
1462  }
1463
1464}
1465
1466