// Signature format: 2.0 package android { public static final class Manifest.permission { field public static final String GET_INTENT_SENDER_INTENT = "android.permission.GET_INTENT_SENDER_INTENT"; } } package android.app { public class ActivityManager { method @RequiresPermission(android.Manifest.permission.SET_ACTIVITY_WATCHER) public void addHomeVisibilityListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.HomeVisibilityListener); method @RequiresPermission(android.Manifest.permission.SET_ACTIVITY_WATCHER) public void removeHomeVisibilityListener(@NonNull android.app.HomeVisibilityListener); method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public boolean updateMccMncConfiguration(@NonNull String, @NonNull String); } public class AppOpsManager { field public static final String OPSTR_NO_ISOLATED_STORAGE = "android:no_isolated_storage"; } public class BroadcastOptions { method public int getMaxManifestReceiverApiLevel(); method public void setMaxManifestReceiverApiLevel(int); } public abstract class HomeVisibilityListener { ctor public HomeVisibilityListener(); method public abstract void onHomeVisibilityChanged(boolean); } public class NotificationManager { method public boolean hasEnabledNotificationListener(@NonNull String, @NonNull android.os.UserHandle); field public static final String ACTION_NOTIFICATION_LISTENER_ENABLED_CHANGED = "android.app.action.NOTIFICATION_LISTENER_ENABLED_CHANGED"; } public final class PendingIntent implements android.os.Parcelable { method @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public boolean intentFilterEquals(@Nullable android.app.PendingIntent); method @NonNull @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public java.util.List queryIntentComponents(int); } public class StatusBarManager { method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setExpansionDisabledForSimNetworkLock(boolean); } } package android.app.role { public class RoleFrameworkInitializer { method public static void registerServiceWrappers(); } public final class RoleManager { method @Nullable public String getBrowserRoleHolder(int); method @Nullable public String getSmsRoleHolder(int); method @Nullable @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public boolean setBrowserRoleHolder(@Nullable String, int); } } package android.app.usage { public class NetworkStatsManager { method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyNetworkStatus(@NonNull java.util.List, @NonNull java.util.List, @Nullable String, @NonNull java.util.List); } } package android.compat { public final class Compatibility { method public static void clearBehaviorChangeDelegate(); method public static void clearOverrides(); method public static boolean isChangeEnabled(long); method public static void reportUnconditionalChange(long); method public static void setBehaviorChangeDelegate(android.compat.Compatibility.BehaviorChangeDelegate); method public static void setOverrides(android.compat.Compatibility.ChangeConfig); } public static interface Compatibility.BehaviorChangeDelegate { method public default boolean isChangeEnabled(long); method public default void onChangeReported(long); } public static final class Compatibility.ChangeConfig { ctor public Compatibility.ChangeConfig(@NonNull java.util.Set, @NonNull java.util.Set); method @NonNull public long[] getDisabledChangesArray(); method @NonNull public java.util.Set getDisabledSet(); method @NonNull public long[] getEnabledChangesArray(); method @NonNull public java.util.Set getEnabledSet(); method public boolean isEmpty(); method public boolean isForceDisabled(long); method public boolean isForceEnabled(long); } } package android.content { public abstract class ContentProvider implements android.content.ComponentCallbacks2 { method @NonNull public static android.net.Uri createContentUriForUser(@NonNull android.net.Uri, @NonNull android.os.UserHandle); } public abstract class Context { method @NonNull public android.os.UserHandle getUser(); field public static final String PAC_PROXY_SERVICE = "pac_proxy"; field public static final String TEST_NETWORK_SERVICE = "test_network"; } } package android.content.pm { public abstract class PackageManager { method @NonNull public String getPermissionControllerPackageName(); } } package android.hardware.usb { public class UsbManager { method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getGadgetHalVersion(); method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbBandwidthMbps(); method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbHalVersion(); field public static final int GADGET_HAL_NOT_SUPPORTED = -1; // 0xffffffff field public static final int GADGET_HAL_V1_0 = 10; // 0xa field public static final int GADGET_HAL_V1_1 = 11; // 0xb field public static final int GADGET_HAL_V1_2 = 12; // 0xc field public static final int USB_DATA_TRANSFER_RATE_10G = 10240; // 0x2800 field public static final int USB_DATA_TRANSFER_RATE_20G = 20480; // 0x5000 field public static final int USB_DATA_TRANSFER_RATE_40G = 40960; // 0xa000 field public static final int USB_DATA_TRANSFER_RATE_5G = 5120; // 0x1400 field public static final int USB_DATA_TRANSFER_RATE_FULL_SPEED = 12; // 0xc field public static final int USB_DATA_TRANSFER_RATE_HIGH_SPEED = 480; // 0x1e0 field public static final int USB_DATA_TRANSFER_RATE_LOW_SPEED = 2; // 0x2 field public static final int USB_DATA_TRANSFER_RATE_UNKNOWN = -1; // 0xffffffff field public static final int USB_HAL_NOT_SUPPORTED = -1; // 0xffffffff field public static final int USB_HAL_V1_0 = 10; // 0xa field public static final int USB_HAL_V1_1 = 11; // 0xb field public static final int USB_HAL_V1_2 = 12; // 0xc field public static final int USB_HAL_V1_3 = 13; // 0xd } } package android.media { public class AudioManager { method public void adjustStreamVolumeForUid(int, int, int, @NonNull String, int, int, int); method public void adjustSuggestedStreamVolumeForUid(int, int, int, @NonNull String, int, int, int); method public void setStreamVolumeForUid(int, int, int, @NonNull String, int, int, int); field public static final int FLAG_FROM_KEY = 4096; // 0x1000 } public class MediaCommunicationManager { method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaCommunicationManager.SessionCallback); method public void unregisterSessionCallback(@NonNull android.media.MediaCommunicationManager.SessionCallback); } public static interface MediaCommunicationManager.SessionCallback { method public default void onSession2TokenCreated(@NonNull android.media.Session2Token); method public default void onSession2TokensChanged(@NonNull java.util.List); } public class MediaFrameworkInitializer { method public static void registerServiceWrappers(); method public static void setMediaServiceManager(@NonNull android.media.MediaServiceManager); } public class MediaMetadataRetriever implements java.lang.AutoCloseable { field public static final int METADATA_KEY_VIDEO_CODEC_MIME_TYPE = 40; // 0x28 } @Deprecated public final class MediaParceledListSlice implements android.os.Parcelable { ctor @Deprecated public MediaParceledListSlice(@NonNull java.util.List); method @Deprecated public int describeContents(); method @Deprecated @NonNull public static android.media.MediaParceledListSlice emptyList(); method @Deprecated public java.util.List getList(); method @Deprecated public void setInlineCountLimit(int); method @Deprecated public void writeToParcel(android.os.Parcel, int); field @Deprecated @NonNull public static final android.os.Parcelable.ClassLoaderCreator CREATOR; } public class MediaServiceManager { method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaCommunicationServiceRegisterer(); method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaSessionServiceRegisterer(); method @NonNull public android.media.MediaServiceManager.ServiceRegisterer getMediaTranscodingServiceRegisterer(); } public static final class MediaServiceManager.ServiceRegisterer { method @Nullable public android.os.IBinder get(); } } package android.media.session { public static final class MediaController.PlaybackInfo implements android.os.Parcelable { ctor public MediaController.PlaybackInfo(int, int, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.media.AudioAttributes, @Nullable String); } public final class MediaSession { field public static final int FLAG_EXCLUSIVE_GLOBAL_PRIORITY = 65536; // 0x10000 } public static final class MediaSession.Token implements android.os.Parcelable { method public int getUid(); } public final class MediaSessionManager { method public void addOnActiveSessionsChangedListener(@Nullable android.content.ComponentName, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener); method public void dispatchMediaKeyEvent(@NonNull android.view.KeyEvent, boolean); method public void dispatchMediaKeyEventAsSystemService(@NonNull android.view.KeyEvent); method public boolean dispatchMediaKeyEventToSessionAsSystemService(@NonNull android.view.KeyEvent, @NonNull android.media.session.MediaSession.Token); method public void dispatchVolumeKeyEvent(@NonNull android.view.KeyEvent, int, boolean); method public void dispatchVolumeKeyEventAsSystemService(@NonNull android.view.KeyEvent, int); method public void dispatchVolumeKeyEventToSessionAsSystemService(@NonNull android.view.KeyEvent, @NonNull android.media.session.MediaSession.Token); method @NonNull public java.util.List getActiveSessionsForUser(@Nullable android.content.ComponentName, @NonNull android.os.UserHandle); method public void registerRemoteSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.RemoteSessionCallback); method public void unregisterRemoteSessionCallback(@NonNull android.media.session.MediaSessionManager.RemoteSessionCallback); field public static final int RESULT_MEDIA_KEY_HANDLED = 1; // 0x1 field public static final int RESULT_MEDIA_KEY_NOT_HANDLED = 0; // 0x0 } public static interface MediaSessionManager.RemoteSessionCallback { method public void onDefaultRemoteSessionChanged(@Nullable android.media.session.MediaSession.Token); method public void onVolumeChanged(@NonNull android.media.session.MediaSession.Token, int); } } package android.net { public final class ConnectivityFrameworkInitializer { method public static void registerServiceWrappers(); } public class ConnectivityManager { method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void factoryReset(); 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 getAllNetworkStateSnapshots(); method @Nullable public android.net.ProxyInfo getGlobalProxy(); method @NonNull public static android.util.Range getIpSecNetIdRange(); 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); 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); 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); method @Deprecated public boolean requestRouteToHostAddress(int, java.net.InetAddress); 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); 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); 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); method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(@Nullable android.net.ProxyInfo); method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setLegacyLockdownVpnEnabled(boolean); method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreference(@NonNull android.os.UserHandle, int, @Nullable java.util.concurrent.Executor, @Nullable Runnable); 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>); 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); 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); method public void systemReady(); field public static final String ACTION_CLEAR_DNS_CACHE = "android.net.action.CLEAR_DNS_CACHE"; field public static final String ACTION_PROMPT_LOST_VALIDATION = "android.net.action.PROMPT_LOST_VALIDATION"; field public static final String ACTION_PROMPT_PARTIAL_CONNECTIVITY = "android.net.action.PROMPT_PARTIAL_CONNECTIVITY"; field public static final String ACTION_PROMPT_UNVALIDATED = "android.net.action.PROMPT_UNVALIDATED"; field public static final int BLOCKED_METERED_REASON_ADMIN_DISABLED = 262144; // 0x40000 field public static final int BLOCKED_METERED_REASON_DATA_SAVER = 65536; // 0x10000 field public static final int BLOCKED_METERED_REASON_MASK = -65536; // 0xffff0000 field public static final int BLOCKED_METERED_REASON_USER_RESTRICTED = 131072; // 0x20000 field public static final int BLOCKED_REASON_APP_STANDBY = 4; // 0x4 field public static final int BLOCKED_REASON_BATTERY_SAVER = 1; // 0x1 field public static final int BLOCKED_REASON_DOZE = 2; // 0x2 field public static final int BLOCKED_REASON_LOCKDOWN_VPN = 16; // 0x10 field public static final int BLOCKED_REASON_NONE = 0; // 0x0 field public static final int BLOCKED_REASON_RESTRICTED_MODE = 8; // 0x8 field public static final int PROFILE_NETWORK_PREFERENCE_DEFAULT = 0; // 0x0 field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE = 1; // 0x1 } public static class ConnectivityManager.NetworkCallback { method public void onBlockedStatusChanged(@NonNull android.net.Network, int); } public class ConnectivitySettingsManager { method public static void clearGlobalProxy(@NonNull android.content.Context); method @Nullable public static String getCaptivePortalHttpUrl(@NonNull android.content.Context); method public static int getCaptivePortalMode(@NonNull android.content.Context, int); method @NonNull public static java.time.Duration getConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration); method @NonNull public static android.util.Range getDnsResolverSampleRanges(@NonNull android.content.Context); method @NonNull public static java.time.Duration getDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration); method public static int getDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, int); method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context); method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration); method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean); method @NonNull public static java.util.Set getMobileDataPreferredUids(@NonNull android.content.Context); method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context); method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context); method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int); method @NonNull public static java.time.Duration getNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration); method @NonNull public static String getPrivateDnsDefaultMode(@NonNull android.content.Context); method @Nullable public static String getPrivateDnsHostname(@NonNull android.content.Context); method public static int getPrivateDnsMode(@NonNull android.content.Context); method @NonNull public static java.util.Set getUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context); method public static boolean getWifiAlwaysRequested(@NonNull android.content.Context, boolean); method @NonNull public static java.time.Duration getWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration); method public static void setCaptivePortalHttpUrl(@NonNull android.content.Context, @Nullable String); method public static void setCaptivePortalMode(@NonNull android.content.Context, int); method public static void setConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration); method public static void setDnsResolverSampleRanges(@NonNull android.content.Context, @NonNull android.util.Range); method public static void setDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration); method public static void setDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, @IntRange(from=0, to=100) int); method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo); method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration); method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean); method public static void setMobileDataPreferredUids(@NonNull android.content.Context, @NonNull java.util.Set); method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int); method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String); method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int); method public static void setNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration); method public static void setPrivateDnsDefaultMode(@NonNull android.content.Context, @NonNull int); method public static void setPrivateDnsHostname(@NonNull android.content.Context, @Nullable String); method public static void setPrivateDnsMode(@NonNull android.content.Context, int); method public static void setUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context, @NonNull java.util.Set); method public static void setWifiAlwaysRequested(@NonNull android.content.Context, boolean); method public static void setWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration); field public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; // 0x2 field public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; // 0x0 field public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; // 0x1 field public static final int NETWORK_AVOID_BAD_WIFI_AVOID = 2; // 0x2 field public static final int NETWORK_AVOID_BAD_WIFI_IGNORE = 0; // 0x0 field public static final int NETWORK_AVOID_BAD_WIFI_PROMPT = 1; // 0x1 field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1 field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2 field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3 } public final class EthernetNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable { ctor public EthernetNetworkSpecifier(@NonNull String); method public int describeContents(); method @Nullable public String getInterfaceName(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable { method public int getResourceId(); } public final class NetworkAgentConfig implements android.os.Parcelable { method @Nullable public String getSubscriberId(); method public boolean isBypassableVpn(); } public static final class NetworkAgentConfig.Builder { method @NonNull public android.net.NetworkAgentConfig.Builder setBypassableVpn(boolean); method @NonNull public android.net.NetworkAgentConfig.Builder setSubscriberId(@Nullable String); } public final class NetworkCapabilities implements android.os.Parcelable { method @Nullable public java.util.Set> getUids(); method public boolean hasForbiddenCapability(int); field public static final long REDACT_ALL = -1L; // 0xffffffffffffffffL field public static final long REDACT_FOR_ACCESS_FINE_LOCATION = 1L; // 0x1L field public static final long REDACT_FOR_LOCAL_MAC_ADDRESS = 2L; // 0x2L field public static final long REDACT_FOR_NETWORK_SETTINGS = 4L; // 0x4L field public static final long REDACT_NONE = 0L; // 0x0L field public static final int TRANSPORT_TEST = 7; // 0x7 } public static final class NetworkCapabilities.Builder { method @NonNull public android.net.NetworkCapabilities.Builder setUids(@Nullable java.util.Set>); } public class NetworkPolicyManager { method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public int getMultipathPreference(@NonNull android.net.Network); method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public int getRestrictBackgroundStatus(int); method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidNetworkingBlocked(int, boolean); method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidRestrictedOnMeteredNetworks(int); method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void registerNetworkPolicyCallback(@Nullable java.util.concurrent.Executor, @NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback); method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void unregisterNetworkPolicyCallback(@NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback); } public static interface NetworkPolicyManager.NetworkPolicyCallback { method public default void onUidBlockedReasonChanged(int, int); } public class NetworkRequest implements android.os.Parcelable { method @NonNull public int[] getForbiddenCapabilities(); method public boolean hasForbiddenCapability(int); } public static class NetworkRequest.Builder { method @NonNull public android.net.NetworkRequest.Builder addForbiddenCapability(int); method @NonNull public android.net.NetworkRequest.Builder removeForbiddenCapability(int); method @NonNull public android.net.NetworkRequest.Builder setUids(@Nullable java.util.Set>); } public final class NetworkStateSnapshot implements android.os.Parcelable { ctor public NetworkStateSnapshot(@NonNull android.net.Network, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, @Nullable String, int); method public int describeContents(); method public int getLegacyType(); method @NonNull public android.net.LinkProperties getLinkProperties(); method @NonNull public android.net.Network getNetwork(); method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities(); method @Nullable public String getSubscriberId(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } public class NetworkWatchlistManager { method @Nullable public byte[] getWatchlistConfigHash(); } public class PacProxyManager { 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); 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); 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); } public static interface PacProxyManager.PacProxyInstalledListener { method public void onPacProxyInstalled(@Nullable android.net.Network, @NonNull android.net.ProxyInfo); } public final class Proxy { method public static void setHttpProxyConfiguration(@Nullable android.net.ProxyInfo); } public final class TestNetworkInterface implements android.os.Parcelable { ctor public TestNetworkInterface(@NonNull android.os.ParcelFileDescriptor, @NonNull String); method public int describeContents(); method @NonNull public android.os.ParcelFileDescriptor getFileDescriptor(); method @NonNull public String getInterfaceName(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } public class TestNetworkManager { method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTapInterface(); method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTunInterface(@NonNull java.util.Collection); method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void setupTestNetwork(@NonNull String, @NonNull android.os.IBinder); method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void teardownTestNetwork(@NonNull android.net.Network); field public static final String TEST_TAP_PREFIX = "testtap"; } public final class TestNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable { ctor public TestNetworkSpecifier(@NonNull String); method public int describeContents(); method @Nullable public String getInterfaceName(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } public final class TetheringConstants { field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType"; field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback"; field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType"; field public static final String EXTRA_RUN_PROVISION = "extraRunProvision"; field public static final String EXTRA_SET_ALARM = "extraSetAlarm"; } public class TetheringManager { ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier); method public int getLastTetherError(@NonNull String); method @NonNull public String[] getTetherableBluetoothRegexs(); method @NonNull public String[] getTetherableIfaces(); method @NonNull public String[] getTetherableUsbRegexs(); method @NonNull public String[] getTetherableWifiRegexs(); method @NonNull public String[] getTetheredIfaces(); method @NonNull public String[] getTetheringErroredIfaces(); method public boolean isTetheringSupported(); method public boolean isTetheringSupported(@NonNull String); method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean); method @Deprecated public int setUsbTethering(boolean); 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); method @Deprecated public int tether(@NonNull String); method @Deprecated public int untether(@NonNull String); } public static interface TetheringManager.TetheringEventCallback { method @Deprecated public default void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps); } @Deprecated public static class TetheringManager.TetheringInterfaceRegexps { method @Deprecated @NonNull public java.util.List getTetherableBluetoothRegexs(); method @Deprecated @NonNull public java.util.List getTetherableUsbRegexs(); method @Deprecated @NonNull public java.util.List getTetherableWifiRegexs(); } public interface TransportInfo { method public default long getApplicableRedactions(); method @NonNull public default android.net.TransportInfo makeCopy(long); } public final class UnderlyingNetworkInfo implements android.os.Parcelable { ctor public UnderlyingNetworkInfo(int, @NonNull String, @NonNull java.util.List); method public int describeContents(); method @NonNull public String getInterface(); method public int getOwnerUid(); method @NonNull public java.util.List getUnderlyingInterfaces(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } public class VpnManager { field public static final int TYPE_VPN_LEGACY = 3; // 0x3 field public static final int TYPE_VPN_NONE = -1; // 0xffffffff field public static final int TYPE_VPN_OEM = 4; // 0x4 field public static final int TYPE_VPN_PLATFORM = 2; // 0x2 field public static final int TYPE_VPN_SERVICE = 1; // 0x1 } public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo { ctor public VpnTransportInfo(int, @Nullable String); method public int describeContents(); method @Nullable public String getSessionId(); method public int getType(); method @NonNull public android.net.VpnTransportInfo makeCopy(long); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } } package android.os { public final class BatteryStatsManager { 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; } public class Binder implements android.os.IBinder { method public final void markVintfStability(); } public class Build { method public static boolean isDebuggable(); } public static class Build.VERSION { field public static final int DEVICE_INITIAL_SDK_INT; } public interface Parcelable { method public default int getStability(); } public class Process { field public static final int VPN_UID = 1016; // 0x3f8 } public class StatsFrameworkInitializer { method public static void registerServiceWrappers(); method public static void setStatsServiceManager(@NonNull android.os.StatsServiceManager); } public class StatsServiceManager { method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsCompanionServiceRegisterer(); method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsManagerServiceRegisterer(); method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsdServiceRegisterer(); } public static class StatsServiceManager.ServiceNotFoundException extends java.lang.Exception { ctor public StatsServiceManager.ServiceNotFoundException(@NonNull String); } public static final class StatsServiceManager.ServiceRegisterer { method @Nullable public android.os.IBinder get(); method @Nullable public android.os.IBinder getOrThrow() throws android.os.StatsServiceManager.ServiceNotFoundException; } } package android.os.storage { public class StorageManager { method public void notifyAppIoBlocked(@NonNull java.util.UUID, int, int, int); method public void notifyAppIoResumed(@NonNull java.util.UUID, int, int, int); field public static final int APP_IO_BLOCKED_REASON_TRANSCODING = 1; // 0x1 field public static final int APP_IO_BLOCKED_REASON_UNKNOWN = 0; // 0x0 } public final class StorageVolume implements android.os.Parcelable { method @NonNull public android.os.UserHandle getOwner(); } } package android.provider { public final class DeviceConfig { field public static final String NAMESPACE_ALARM_MANAGER = "alarm_manager"; field public static final String NAMESPACE_APP_STANDBY = "app_standby"; field public static final String NAMESPACE_DEVICE_IDLE = "device_idle"; } } package android.scheduling { public class SchedulingFrameworkInitializer { method public static void registerServiceWrappers(); } } package android.system { public final class NetlinkSocketAddress extends java.net.SocketAddress { ctor public NetlinkSocketAddress(int, int); method public int getGroupsMask(); method public int getPortId(); } public final class Os { method @Nullable public static android.system.StructCapUserData[] capget(@NonNull android.system.StructCapUserHeader) throws android.system.ErrnoException; method public static void capset(@NonNull android.system.StructCapUserHeader, @NonNull android.system.StructCapUserData[]) throws android.system.ErrnoException; method public static int getpgid(int) throws android.system.ErrnoException; method @Nullable public static android.system.StructRlimit getrlimit(int) throws android.system.ErrnoException; method public static int getsockoptInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException; method @Nullable public static android.system.StructLinger getsockoptLinger(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException; method public static int ioctlInt(@NonNull java.io.FileDescriptor, int) throws android.system.ErrnoException; method @Nullable public static java.io.FileDescriptor[] pipe2(int) throws android.system.ErrnoException; method @Nullable public static String realpath(@Nullable String) throws android.system.ErrnoException; method public static void setpgid(int, int) throws android.system.ErrnoException; method public static void setregid(int, int) throws android.system.ErrnoException; method public static void setreuid(int, int) throws android.system.ErrnoException; method public static void setsockoptIfreq(@NonNull java.io.FileDescriptor, int, int, @Nullable String) throws android.system.ErrnoException; method public static void setsockoptLinger(@NonNull java.io.FileDescriptor, int, int, @NonNull android.system.StructLinger) throws android.system.ErrnoException; 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; method public static void unlink(@Nullable String) throws android.system.ErrnoException; } public final class OsConstants { method public static int CAP_TO_INDEX(int); method public static int CAP_TO_MASK(int); field public static final int ARPHRD_LOOPBACK; field public static final int EUSERS; field public static final int MAP_POPULATE; field public static final int O_DIRECT; field public static final int PR_CAP_AMBIENT; field public static final int PR_CAP_AMBIENT_RAISE; field public static final int RLIMIT_NOFILE; field public static final int RTMGRP_IPV4_IFADDR; field public static final int SPLICE_F_MORE; field public static final int SPLICE_F_MOVE; field public static final int TIOCOUTQ; field public static final int UDP_ENCAP; field public static final int UDP_ENCAP_ESPINUDP; field public static final int XATTR_CREATE; field public static final int XATTR_REPLACE; field public static final int _LINUX_CAPABILITY_VERSION_3; } public final class PacketSocketAddress extends java.net.SocketAddress { ctor public PacketSocketAddress(int, int, byte[]); } public final class StructCapUserData { ctor public StructCapUserData(int, int, int); field public final int effective; field public final int inheritable; field public final int permitted; } public final class StructCapUserHeader { ctor public StructCapUserHeader(int, int); } public final class StructLinger { ctor public StructLinger(int, int); method public boolean isOn(); field public final int l_linger; } public final class StructRlimit { field public final long rlim_cur; } public final class UnixSocketAddress extends java.net.SocketAddress { method public static android.system.UnixSocketAddress createFileSystem(String); } public final class VmSocketAddress extends java.net.SocketAddress { ctor public VmSocketAddress(int, int); method public int getSvmCid(); method public int getSvmPort(); } } package android.telephony { public abstract class CellSignalStrength { method public static int getNumSignalStrengthLevels(); } public class TelephonyManager { method @NonNull public static int[] getAllNetworkTypes(); } } package android.util { public class AtomicFile { ctor public AtomicFile(@NonNull java.io.File, @Nullable android.util.SystemConfigFileCommitEventLogger); } public final class Log { method public static int logToRadioBuffer(int, @Nullable String, @Nullable String); } public class SystemConfigFileCommitEventLogger { ctor public SystemConfigFileCommitEventLogger(@NonNull String); method public void setStartTime(long); } } package com.android.okhttp.internalandroidapi { public final class AndroidResponseCacheAdapter { ctor public AndroidResponseCacheAdapter(@NonNull com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder); method public void close() throws java.io.IOException; method public void delete() throws java.io.IOException; method public void flush() throws java.io.IOException; method @Nullable public java.net.CacheResponse get(@NonNull java.net.URI, @NonNull String, @Nullable java.util.Map>) throws java.io.IOException; method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder(); method public int getHitCount(); method public long getMaxSize(); method public int getNetworkCount(); method public int getRequestCount(); method public long getSize() throws java.io.IOException; method @Nullable public java.net.CacheRequest put(@NonNull java.net.URI, @NonNull java.net.URLConnection) throws java.io.IOException; } public interface HasCacheHolder { method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder(); } public static final class HasCacheHolder.CacheHolder { method @NonNull public static com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder create(@NonNull java.io.File, long); method public boolean isEquivalent(@NonNull java.io.File, long); } } package dalvik.annotation.codegen { @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 { method public abstract int presentAfter(); method public abstract Class returnType(); } @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public static @interface CovariantReturnType.CovariantReturnTypes { method public abstract dalvik.annotation.codegen.CovariantReturnType[] value(); } } package dalvik.annotation.optimization { @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface CriticalNative { } @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface FastNative { } } package dalvik.system { public final class AnnotatedStackTraceElement { method @Nullable public Object getBlockedOn(); method @Nullable public Object[] getHeldLocks(); method @NonNull public StackTraceElement getStackTraceElement(); } public class AppSpecializationHooks { method public static void handleCompatChangesBeforeBindingApplication(); } public class BaseDexClassLoader extends java.lang.ClassLoader { method public void addDexPath(@Nullable String); method public void addNativePath(@NonNull java.util.Collection); method @NonNull public String getLdLibraryPath(); method public void reportClassLoaderChain(); method public static void setReporter(@Nullable dalvik.system.BaseDexClassLoader.Reporter); } public static interface BaseDexClassLoader.Reporter { method public void report(@NonNull java.util.Map); } public final class BlockGuard { method @NonNull public static dalvik.system.BlockGuard.Policy getThreadPolicy(); method @NonNull public static dalvik.system.BlockGuard.VmPolicy getVmPolicy(); method public static void setThreadPolicy(@NonNull dalvik.system.BlockGuard.Policy); method public static void setVmPolicy(@NonNull dalvik.system.BlockGuard.VmPolicy); field public static final dalvik.system.BlockGuard.Policy LAX_POLICY; field public static final dalvik.system.BlockGuard.VmPolicy LAX_VM_POLICY; } public static interface BlockGuard.Policy { method public int getPolicyMask(); method public void onReadFromDisk(); method public void onUnbufferedIO(); method public void onWriteToDisk(); } public static interface BlockGuard.VmPolicy { method public void onPathAccess(@NonNull String); } public final class CloseGuard { method public void close(); method public static dalvik.system.CloseGuard get(); method public static dalvik.system.CloseGuard.Reporter getReporter(); method public void open(String); method public void openWithCallSite(String, String); method public static void setEnabled(boolean); method public static void setReporter(dalvik.system.CloseGuard.Reporter); method public void warnIfOpen(); } public static interface CloseGuard.Reporter { method public void report(String, Throwable); method public default void report(String); } public final class DelegateLastClassLoader extends dalvik.system.PathClassLoader { ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[]); } @Deprecated public final class DexFile { method @Deprecated @NonNull public static dalvik.system.DexFile.OptimizationInfo getDexFileOptimizationInfo(@NonNull String, @NonNull String) throws java.io.FileNotFoundException; method @Deprecated @Nullable public static String[] getDexFileOutputPaths(@NonNull String, @NonNull String) throws java.io.FileNotFoundException; method @Deprecated public static int getDexOptNeeded(@NonNull String, @NonNull String, @NonNull String, @Nullable String, boolean, boolean) throws java.io.FileNotFoundException, java.io.IOException; method @Deprecated @NonNull public static String getSafeModeCompilerFilter(@NonNull String); method @Deprecated public static boolean isProfileGuidedCompilerFilter(@NonNull String); method @Deprecated public static boolean isValidCompilerFilter(@NonNull String); field @Deprecated public static final int DEX2OAT_FOR_FILTER = 3; // 0x3 field @Deprecated public static final int NO_DEXOPT_NEEDED = 0; // 0x0 } @Deprecated public static final class DexFile.OptimizationInfo { method @Deprecated @NonNull public String getReason(); method @Deprecated @NonNull public String getStatus(); } public class PathClassLoader extends dalvik.system.BaseDexClassLoader { ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[]); } public final class RuntimeHooks { method public static void setTimeZoneIdSupplier(@NonNull java.util.function.Supplier); method public static void setUncaughtExceptionPreHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler); } public abstract class SocketTagger { ctor public SocketTagger(); method public static dalvik.system.SocketTagger get(); method public static void set(dalvik.system.SocketTagger); method public abstract void tag(java.io.FileDescriptor) throws java.net.SocketException; method public final void tag(java.net.Socket) throws java.net.SocketException; method public final void tag(java.net.DatagramSocket) throws java.net.SocketException; method public abstract void untag(java.io.FileDescriptor) throws java.net.SocketException; method public final void untag(java.net.Socket) throws java.net.SocketException; method public final void untag(java.net.DatagramSocket) throws java.net.SocketException; } public final class VMDebug { method public static void attachAgent(String, ClassLoader) throws java.io.IOException; method public static long countInstancesOfClass(Class, boolean); method public static long[] countInstancesOfClasses(Class[], boolean); method public static void dumpHprofData(String) throws java.io.IOException; method public static void dumpHprofData(String, java.io.FileDescriptor) throws java.io.IOException; method public static void dumpHprofDataDdms(); method public static void dumpReferenceTables(); method public static int getAllocCount(int); method @dalvik.annotation.optimization.FastNative public static int getLoadedClassCount(); method public static int getMethodTracingMode(); method public static String getRuntimeStat(String); method public static java.util.Map getRuntimeStats(); method public static String[] getVmFeatureList(); method @dalvik.annotation.optimization.FastNative public static boolean isDebuggerConnected(); method @dalvik.annotation.optimization.FastNative public static boolean isDebuggingEnabled(); method @dalvik.annotation.optimization.FastNative public static long lastDebuggerActivity(); method @dalvik.annotation.optimization.FastNative public static void printLoadedClasses(int); method public static void resetAllocCount(int); method public static void setAllocTrackerStackDepth(int); method public static void startAllocCounting(); method public static void startMethodTracing(String, int, int, boolean, int); method public static void startMethodTracing(String, java.io.FileDescriptor, int, int, boolean, int, boolean); method public static void startMethodTracingDdms(int, int, boolean, int); method public static void stopAllocCounting(); method public static void stopMethodTracing(); method @dalvik.annotation.optimization.FastNative public static long threadCpuTimeNanos(); field public static final int KIND_ALL_COUNTS = -1; // 0xffffffff field public static final int KIND_GLOBAL_ALLOCATED_BYTES = 2; // 0x2 field public static final int KIND_GLOBAL_ALLOCATED_OBJECTS = 1; // 0x1 field public static final int KIND_GLOBAL_CLASS_INIT_COUNT = 32; // 0x20 field public static final int KIND_GLOBAL_CLASS_INIT_TIME = 64; // 0x40 field public static final int KIND_GLOBAL_FREED_BYTES = 8; // 0x8 field public static final int KIND_GLOBAL_FREED_OBJECTS = 4; // 0x4 field public static final int KIND_GLOBAL_GC_INVOCATIONS = 16; // 0x10 field public static final int KIND_THREAD_ALLOCATED_BYTES = 131072; // 0x20000 field public static final int KIND_THREAD_ALLOCATED_OBJECTS = 65536; // 0x10000 field public static final int KIND_THREAD_GC_INVOCATIONS = 1048576; // 0x100000 field public static final int TRACE_COUNT_ALLOCS = 1; // 0x1 } public final class VMRuntime { method @dalvik.annotation.optimization.FastNative public long addressOf(Object); method public static void bootCompleted(); method public void clampGrowthLimit(); method public void clearGrowthLimit(); method public static String getCurrentInstructionSet(); method public static String getInstructionSet(String); method public static dalvik.system.VMRuntime getRuntime(); method public int getTargetSdkVersion(); method @dalvik.annotation.optimization.FastNative public boolean is64Bit(); method public static boolean is64BitAbi(String); method public static boolean is64BitInstructionSet(String); method @dalvik.annotation.optimization.FastNative public boolean isCheckJniEnabled(); method @dalvik.annotation.optimization.FastNative public boolean isNativeDebuggable(); method public static boolean isValidClassLoaderContext(String); method @dalvik.annotation.optimization.FastNative public Object newNonMovableArray(Class, int); method @dalvik.annotation.optimization.FastNative public Object newUnpaddedArray(Class, int); method public void notifyStartupCompleted(); method public void preloadDexCaches(); method public static void registerAppInfo(String, String, String, String[], int); method public void registerNativeAllocation(long); method @Deprecated public void registerNativeAllocation(int); method public void registerNativeFree(long); method @Deprecated public void registerNativeFree(int); method public static void registerSensitiveThread(); method public void requestConcurrentGC(); method public static void resetJitCounters(); method public static void setDedupeHiddenApiWarnings(boolean); method public void setDisabledCompatChanges(long[]); method public void setHiddenApiAccessLogSamplingRate(int); method public void setHiddenApiExemptions(String[]); method public static void setHiddenApiUsageLogger(dalvik.system.VMRuntime.HiddenApiUsageLogger); method public static void setNonSdkApiUsageConsumer(java.util.function.Consumer); method public static void setProcessDataDirectory(String); method public static void setProcessPackageName(String); method public void setTargetSdkVersion(int); method public void updateProcessState(int); method public String vmInstructionSet(); method public String vmLibrary(); field public static final int CODE_PATH_TYPE_PRIMARY_APK = 1; // 0x1 field public static final int CODE_PATH_TYPE_SECONDARY_DEX = 4; // 0x4 field public static final int CODE_PATH_TYPE_SPLIT_APK = 2; // 0x2 field public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000; // 0x2710 } public static interface VMRuntime.HiddenApiUsageLogger { method public void hiddenApiUsed(int, String, String, int, boolean); field public static final int ACCESS_METHOD_JNI = 2; // 0x2 field public static final int ACCESS_METHOD_LINKING = 3; // 0x3 field public static final int ACCESS_METHOD_NONE = 0; // 0x0 field public static final int ACCESS_METHOD_REFLECTION = 1; // 0x1 } public final class VMStack { method @Nullable @dalvik.annotation.optimization.FastNative public static dalvik.system.AnnotatedStackTraceElement[] getAnnotatedThreadStackTrace(Thread); } public final class ZygoteHooks { method public static void gcAndFinalize(); method public static boolean isIndefiniteThreadSuspensionSafe(); method public static void onBeginPreload(); method public static void onEndPreload(); method public static void postForkChild(int, boolean, boolean, String); method public static void postForkCommon(); method public static void postForkSystemServer(int); method public static void preFork(); method public static void startZygoteNoThreadCreation(); method public static void stopZygoteNoThreadCreation(); } } package java.io { public final class FileDescriptor { method public int getInt$(); method public void setInt$(int); } public class FileInputStream extends java.io.InputStream { ctor public FileInputStream(java.io.FileDescriptor, boolean); } } package java.lang { public class Thread implements java.lang.Runnable { method public static java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionPreHandler(); method public static void setUncaughtExceptionPreHandler(java.lang.Thread.UncaughtExceptionHandler); } } package java.net { public class DatagramSocket implements java.io.Closeable { method public java.io.FileDescriptor getFileDescriptor$(); } public final class Inet4Address extends java.net.InetAddress { field public static final java.net.InetAddress ALL; field public static final java.net.InetAddress ANY; field public static final java.net.InetAddress LOOPBACK; } public final class Inet6Address extends java.net.InetAddress { field public static final java.net.InetAddress ANY; field public static final java.net.InetAddress LOOPBACK; } public class InetAddress implements java.io.Serializable { method public static void clearDnsCache(); method @NonNull public static java.net.InetAddress[] getAllByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException; method @NonNull public static java.net.InetAddress getByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException; method @Deprecated public static boolean isNumeric(String); method @Deprecated public static java.net.InetAddress parseNumericAddress(String); } public class InetSocketAddress extends java.net.SocketAddress { ctor public InetSocketAddress(); } public class ServerSocket implements java.io.Closeable { method public java.net.SocketImpl getImpl() throws java.net.SocketException; } public class Socket implements java.io.Closeable { method public java.io.FileDescriptor getFileDescriptor$(); } public abstract class SocketImpl implements java.net.SocketOptions { method public java.io.FileDescriptor getFD$(); } } package java.nio { public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable { method public void setAccessible(boolean); } public class DirectByteBuffer extends java.nio.MappedByteBuffer { ctor public DirectByteBuffer(int, long, java.io.FileDescriptor, Runnable, boolean); method public final long address(); method public final void setAccessible(boolean); } public final class NIOAccess { method public static Object getBaseArray(java.nio.Buffer); method public static int getBaseArrayOffset(java.nio.Buffer); } public final class NioUtils { method public static void freeDirectBuffer(java.nio.ByteBuffer); method public static byte[] unsafeArray(java.nio.ByteBuffer); method public static int unsafeArrayOffset(java.nio.ByteBuffer); } } package java.security { public abstract class Provider extends java.util.Properties { method public void warmUpServiceProvision(); } public abstract class Signature extends java.security.SignatureSpi { method public java.security.SignatureSpi getCurrentSpi(); } } package java.text { public abstract class DateFormat extends java.text.Format { method public static final void set24HourTimePref(Boolean); } } package java.util { public class LinkedHashMap extends java.util.HashMap implements java.util.Map { method public java.util.Map.Entry eldest(); } } package java.util.zip { public class ZipEntry implements java.lang.Cloneable { method public long getDataOffset(); } } package javax.crypto { public class Cipher { method public javax.crypto.CipherSpi getCurrentSpi(); } public class Mac implements java.lang.Cloneable { method public javax.crypto.MacSpi getCurrentSpi(); } } package javax.net.ssl { public abstract class HttpsURLConnection extends java.net.HttpURLConnection { method public static javax.net.ssl.HostnameVerifier getStrictHostnameVerifier(); } } package libcore.content.type { public final class MimeMap { method @NonNull public libcore.content.type.MimeMap.Builder buildUpon(); method @NonNull public static libcore.content.type.MimeMap.Builder builder(); method @NonNull public java.util.Set extensions(); method @NonNull public static libcore.content.type.MimeMap getDefault(); method @Nullable public String guessExtensionFromMimeType(@Nullable String); method @Nullable public String guessMimeTypeFromExtension(@Nullable String); method public boolean hasExtension(@Nullable String); method public boolean hasMimeType(@Nullable String); method @NonNull public java.util.Set mimeTypes(); method public static void setDefaultSupplier(@NonNull java.util.function.Supplier); } public static final class MimeMap.Builder { method @NonNull public libcore.content.type.MimeMap.Builder addMimeMapping(@NonNull String, @NonNull java.util.List); method @NonNull public libcore.content.type.MimeMap build(); } } package libcore.io { public class ForwardingOs implements libcore.io.Os { ctor protected ForwardingOs(@NonNull libcore.io.Os); method public boolean access(@Nullable String, int) throws android.system.ErrnoException; method public java.io.FileDescriptor open(@Nullable String, int, int) throws android.system.ErrnoException; method public void remove(@Nullable String) throws android.system.ErrnoException; method public void rename(@Nullable String, @Nullable String) throws android.system.ErrnoException; method @Nullable public android.system.StructStat stat(@Nullable String) throws android.system.ErrnoException; method public void unlink(@Nullable String) throws android.system.ErrnoException; } public final class IoBridge { method public static void closeAndSignalBlockedThreads(@NonNull java.io.FileDescriptor) throws java.io.IOException; method @NonNull public static java.io.FileDescriptor open(@NonNull String, int) throws java.io.FileNotFoundException; method public static int read(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException; method public static void write(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException; } public final class IoUtils { method public static int acquireRawFd(@NonNull java.io.FileDescriptor); method public static void close(@Nullable java.io.FileDescriptor) throws java.io.IOException; method public static void closeQuietly(@Nullable AutoCloseable); method public static void closeQuietly(@Nullable java.io.FileDescriptor); method public static void closeQuietly(@Nullable java.net.Socket); method @NonNull public static byte[] readFileAsByteArray(@NonNull String) throws java.io.IOException; method @NonNull public static String readFileAsString(@NonNull String) throws java.io.IOException; method public static void setBlocking(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException; method public static void setFdOwner(@NonNull java.io.FileDescriptor, @NonNull Object); } public final class Memory { method public static void memmove(@NonNull Object, int, @NonNull Object, int, long); method public static int peekInt(@NonNull byte[], int, @NonNull java.nio.ByteOrder); method public static short peekShort(@NonNull byte[], int, @NonNull java.nio.ByteOrder); method public static void pokeInt(@NonNull byte[], int, int, @NonNull java.nio.ByteOrder); method public static void pokeLong(@NonNull byte[], int, long, @NonNull java.nio.ByteOrder); method public static void pokeShort(@NonNull byte[], int, short, @NonNull java.nio.ByteOrder); } public interface Os { method public static boolean compareAndSetDefault(libcore.io.Os, libcore.io.Os); method public static libcore.io.Os getDefault(); } public final class Streams { method public static int copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException; method public static void readFully(@NonNull java.io.InputStream, @NonNull byte[]) throws java.io.IOException; method @NonNull public static byte[] readFully(@NonNull java.io.InputStream) throws java.io.IOException; method @NonNull public static String readFully(@NonNull java.io.Reader) throws java.io.IOException; method @NonNull public static byte[] readFullyNoClose(@NonNull java.io.InputStream) throws java.io.IOException; method public static int readSingleByte(@NonNull java.io.InputStream) throws java.io.IOException; method public static long skipByReading(@NonNull java.io.InputStream, long) throws java.io.IOException; method public static void writeSingleByte(@NonNull java.io.OutputStream, int) throws java.io.IOException; } } package libcore.net { public class InetAddressUtils { method public static boolean isNumericAddress(String); method public static java.net.InetAddress parseNumericAddress(String); } public abstract class NetworkSecurityPolicy { ctor public NetworkSecurityPolicy(); method public static libcore.net.NetworkSecurityPolicy getInstance(); method public abstract boolean isCertificateTransparencyVerificationRequired(String); method public abstract boolean isCleartextTrafficPermitted(); method public abstract boolean isCleartextTrafficPermitted(String); method public static void setInstance(libcore.net.NetworkSecurityPolicy); } } package libcore.net.event { public final class NetworkEventDispatcher { method public void dispatchNetworkConfigurationChange(); method public static libcore.net.event.NetworkEventDispatcher getInstance(); } } package libcore.net.http { public interface Dns { method @NonNull public java.util.List lookup(@Nullable String) throws java.net.UnknownHostException; } public class HttpURLConnectionFactory { method @NonNull public static libcore.net.http.HttpURLConnectionFactory createInstance(); method public java.net.URLConnection openConnection(@NonNull java.net.URL, @NonNull javax.net.SocketFactory, @NonNull java.net.Proxy) throws java.io.IOException; method public void setDns(@NonNull libcore.net.http.Dns); method public void setNewConnectionPool(int, long, @NonNull java.util.concurrent.TimeUnit); } } package libcore.util { public final class EmptyArray { field @NonNull public static final boolean[] BOOLEAN; field @NonNull public static final byte[] BYTE; field @NonNull public static final float[] FLOAT; field @NonNull public static final int[] INT; field @NonNull public static final long[] LONG; field @NonNull public static final Object[] OBJECT; field @NonNull public static final String[] STRING; } public final class FP16 { method public static short ceil(short); method public static int compare(short, short); method public static boolean equals(short, short); method public static short floor(short); method public static boolean greater(short, short); method public static boolean greaterEquals(short, short); method public static boolean isInfinite(short); method public static boolean isNaN(short); method public static boolean isNormalized(short); method public static boolean less(short, short); method public static boolean lessEquals(short, short); method public static short max(short, short); method public static short min(short, short); method public static short rint(short); method public static float toFloat(short); method public static short toHalf(float); method public static String toHexString(short); method public static short trunc(short); field public static final short EPSILON = 5120; // 0x1400 field public static final int EXPONENT_BIAS = 15; // 0xf field public static final int EXPONENT_SHIFT = 10; // 0xa field public static final int EXPONENT_SIGNIFICAND_MASK = 32767; // 0x7fff field public static final short LOWEST_VALUE = -1025; // 0xfffffbff field public static final int MAX_EXPONENT = 15; // 0xf field public static final short MAX_VALUE = 31743; // 0x7bff field public static final int MIN_EXPONENT = -14; // 0xfffffff2 field public static final short MIN_NORMAL = 1024; // 0x400 field public static final short MIN_VALUE = 1; // 0x1 field public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00 field public static final short NEGATIVE_ZERO = -32768; // 0xffff8000 field public static final short NaN = 32256; // 0x7e00 field public static final short POSITIVE_INFINITY = 31744; // 0x7c00 field public static final short POSITIVE_ZERO = 0; // 0x0 field public static final int SHIFTED_EXPONENT_MASK = 31; // 0x1f field public static final int SIGNIFICAND_MASK = 1023; // 0x3ff field public static final int SIGN_MASK = 32768; // 0x8000 field public static final int SIGN_SHIFT = 15; // 0xf field public static final int SIZE = 16; // 0x10 } public class HexEncoding { method public static byte[] decode(String) throws java.lang.IllegalArgumentException; method public static byte[] decode(String, boolean) throws java.lang.IllegalArgumentException; method public static byte[] decode(char[]) throws java.lang.IllegalArgumentException; method public static byte[] decode(char[], boolean) throws java.lang.IllegalArgumentException; method public static char[] encode(byte[]); method public static char[] encode(byte[], boolean); method public static char[] encode(byte[], int, int); method public static String encodeToString(byte, boolean); method public static String encodeToString(byte[]); method public static String encodeToString(byte[], boolean); } public class NativeAllocationRegistry { ctor public NativeAllocationRegistry(@NonNull ClassLoader, long, long); method public static void applyFreeFunction(long, long); method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long, long); method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long); method public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull ClassLoader, long, long); method @NonNull public Runnable registerNativeAllocation(@NonNull Object, long); } public class SneakyThrow { method public static void sneakyThrow(@NonNull Throwable); } public class XmlObjectFactory { method @NonNull public static org.xml.sax.XMLReader newXMLReader(); method @NonNull public static org.xmlpull.v1.XmlPullParser newXmlPullParser(); method @NonNull public static org.xmlpull.v1.XmlSerializer newXmlSerializer(); } } package org.apache.harmony.dalvik.ddmc { public class Chunk { ctor public Chunk(int, byte[], int, int); ctor public Chunk(int, java.nio.ByteBuffer); field public int type; } public abstract class ChunkHandler { ctor public ChunkHandler(); method public static org.apache.harmony.dalvik.ddmc.Chunk createFailChunk(int, String); method public abstract org.apache.harmony.dalvik.ddmc.Chunk handleChunk(org.apache.harmony.dalvik.ddmc.Chunk); method public static String name(int); method public abstract void onConnected(); method public abstract void onDisconnected(); method public static int type(String); method public static java.nio.ByteBuffer wrapChunk(org.apache.harmony.dalvik.ddmc.Chunk); field public static final java.nio.ByteOrder CHUNK_ORDER; } public final class DdmServer { method public static void registerHandler(int, org.apache.harmony.dalvik.ddmc.ChunkHandler); method public static void registrationComplete(); method public static void sendChunk(org.apache.harmony.dalvik.ddmc.Chunk); method public static org.apache.harmony.dalvik.ddmc.ChunkHandler unregisterHandler(int); } public final class DdmVmInternal { method public static void setRecentAllocationsTrackingEnabled(boolean); method public static void setThreadNotifyEnabled(boolean); } } package org.json { public class JSONObject { method @NonNull public java.util.Set keySet(); } } package sun.misc { public class Cleaner extends java.lang.ref.PhantomReference { method public void clean(); method public static sun.misc.Cleaner create(Object, Runnable); } public final class Unsafe { method public int arrayBaseOffset(Class); method public int arrayIndexScale(Class); method @dalvik.annotation.optimization.FastNative public void copyMemory(long, long, long); method @dalvik.annotation.optimization.FastNative public boolean getBoolean(Object, long); method @dalvik.annotation.optimization.FastNative public byte getByte(Object, long); method @dalvik.annotation.optimization.FastNative public byte getByte(long); method @dalvik.annotation.optimization.FastNative public double getDouble(Object, long); method @dalvik.annotation.optimization.FastNative public double getDouble(long); method @dalvik.annotation.optimization.FastNative public float getFloat(Object, long); method @dalvik.annotation.optimization.FastNative public float getFloat(long); method @dalvik.annotation.optimization.FastNative public int getInt(Object, long); method @dalvik.annotation.optimization.FastNative public int getInt(long); method @dalvik.annotation.optimization.FastNative public long getLong(Object, long); method @dalvik.annotation.optimization.FastNative public long getLong(long); method @dalvik.annotation.optimization.FastNative public Object getObject(Object, long); method public static sun.misc.Unsafe getUnsafe(); method public long objectFieldOffset(java.lang.reflect.Field); method @dalvik.annotation.optimization.FastNative public void putBoolean(Object, long, boolean); method @dalvik.annotation.optimization.FastNative public void putByte(Object, long, byte); method @dalvik.annotation.optimization.FastNative public void putByte(long, byte); method @dalvik.annotation.optimization.FastNative public void putDouble(Object, long, double); method @dalvik.annotation.optimization.FastNative public void putDouble(long, double); method @dalvik.annotation.optimization.FastNative public void putFloat(Object, long, float); method @dalvik.annotation.optimization.FastNative public void putFloat(long, float); method @dalvik.annotation.optimization.FastNative public void putInt(Object, long, int); method @dalvik.annotation.optimization.FastNative public void putInt(long, int); method @dalvik.annotation.optimization.FastNative public void putLong(Object, long, long); method @dalvik.annotation.optimization.FastNative public void putLong(long, long); method @dalvik.annotation.optimization.FastNative public void putObject(Object, long, Object); } } package sun.security.jca { public class Providers { method public static Object startJarVerification(); method public static void stopJarVerification(Object); } } package sun.security.pkcs { public class PKCS7 { ctor public PKCS7(java.io.InputStream) throws java.io.IOException, sun.security.pkcs.ParsingException; ctor public PKCS7(byte[]) throws sun.security.pkcs.ParsingException; method public java.security.cert.X509Certificate[] getCertificates(); method public sun.security.pkcs.SignerInfo[] getSignerInfos(); method public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, java.io.InputStream) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.SignatureException; method public sun.security.pkcs.SignerInfo[] verify(byte[]) throws java.security.NoSuchAlgorithmException, java.security.SignatureException; } public class ParsingException extends java.io.IOException { } public class SignerInfo { ctor public SignerInfo(); method public java.util.ArrayList getCertificateChain(sun.security.pkcs.PKCS7) throws java.io.IOException; } } package sun.security.util { public final class ObjectIdentifier implements java.io.Serializable { ctor public ObjectIdentifier(String) throws java.io.IOException; } } package sun.security.x509 { public class AlgorithmId implements java.io.Serializable { ctor public AlgorithmId(sun.security.util.ObjectIdentifier); method public String getName(); } }