1// Signature format: 2.0 2package android.compat { 3 4 public final class Compatibility { 5 method public static void clearBehaviorChangeDelegate(); 6 method public static void clearOverrides(); 7 method public static boolean isChangeEnabled(long); 8 method public static void reportUnconditionalChange(long); 9 method public static void setBehaviorChangeDelegate(android.compat.Compatibility.BehaviorChangeDelegate); 10 method public static void setOverrides(android.compat.Compatibility.ChangeConfig); 11 } 12 13 public static interface Compatibility.BehaviorChangeDelegate { 14 method public default boolean isChangeEnabled(long); 15 method public default void onChangeReported(long); 16 } 17 18 public static final class Compatibility.ChangeConfig { 19 ctor public Compatibility.ChangeConfig(@NonNull java.util.Set<java.lang.Long>, @NonNull java.util.Set<java.lang.Long>); 20 method @NonNull public long[] getDisabledChangesArray(); 21 method @NonNull public java.util.Set<java.lang.Long> getDisabledSet(); 22 method @NonNull public long[] getEnabledChangesArray(); 23 method @NonNull public java.util.Set<java.lang.Long> getEnabledSet(); 24 method public boolean isEmpty(); 25 method public boolean isForceDisabled(long); 26 method public boolean isForceEnabled(long); 27 } 28 29} 30 31package android.system { 32 33 public final class NetlinkSocketAddress extends java.net.SocketAddress { 34 ctor public NetlinkSocketAddress(int, int); 35 method public int getGroupsMask(); 36 method public int getPortId(); 37 } 38 39 public final class Os { 40 method @Nullable public static android.system.StructCapUserData[] capget(@NonNull android.system.StructCapUserHeader) throws android.system.ErrnoException; 41 method public static void capset(@NonNull android.system.StructCapUserHeader, @NonNull android.system.StructCapUserData[]) throws android.system.ErrnoException; 42 method public static int getpgid(int) throws android.system.ErrnoException; 43 method @Nullable public static android.system.StructRlimit getrlimit(int) throws android.system.ErrnoException; 44 method public static int getsockoptInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException; 45 method @Nullable public static android.system.StructLinger getsockoptLinger(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException; 46 method public static int ioctlInt(@NonNull java.io.FileDescriptor, int) throws android.system.ErrnoException; 47 method @Nullable public static java.io.FileDescriptor[] pipe2(int) throws android.system.ErrnoException; 48 method @Nullable public static String realpath(@Nullable String) throws android.system.ErrnoException; 49 method public static void setpgid(int, int) throws android.system.ErrnoException; 50 method public static void setregid(int, int) throws android.system.ErrnoException; 51 method public static void setreuid(int, int) throws android.system.ErrnoException; 52 method public static void setsockoptIfreq(@NonNull java.io.FileDescriptor, int, int, @Nullable String) throws android.system.ErrnoException; 53 method public static void setsockoptLinger(@NonNull java.io.FileDescriptor, int, int, @NonNull android.system.StructLinger) throws android.system.ErrnoException; 54 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; 55 method public static void unlink(@Nullable String) throws android.system.ErrnoException; 56 } 57 58 public final class OsConstants { 59 method public static int CAP_TO_INDEX(int); 60 method public static int CAP_TO_MASK(int); 61 field public static final int ARPHRD_LOOPBACK; 62 field public static final int EUSERS; 63 field public static final int MAP_POPULATE; 64 field public static final int O_DIRECT; 65 field public static final int PR_CAP_AMBIENT; 66 field public static final int PR_CAP_AMBIENT_RAISE; 67 field public static final int RLIMIT_NOFILE; 68 field @FlaggedApi("com.android.libcore.openjdk_21_v1_apis") public static final int RLIMIT_RTPRIO; 69 field public static final int RTMGRP_IPV4_IFADDR; 70 field public static final int SPLICE_F_MORE; 71 field public static final int SPLICE_F_MOVE; 72 field public static final int TIOCOUTQ; 73 field public static final int UDP_ENCAP; 74 field public static final int UDP_ENCAP_ESPINUDP; 75 field public static final int XATTR_CREATE; 76 field public static final int XATTR_REPLACE; 77 field public static final int _LINUX_CAPABILITY_VERSION_3; 78 } 79 80 public final class PacketSocketAddress extends java.net.SocketAddress { 81 ctor public PacketSocketAddress(int, int, byte[]); 82 } 83 84 public final class StructCapUserData { 85 ctor public StructCapUserData(int, int, int); 86 field public final int effective; 87 field public final int inheritable; 88 field public final int permitted; 89 } 90 91 public final class StructCapUserHeader { 92 ctor public StructCapUserHeader(int, int); 93 } 94 95 public final class StructLinger { 96 ctor public StructLinger(int, int); 97 method public boolean isOn(); 98 field public final int l_linger; 99 } 100 101 public final class StructRlimit { 102 field public final long rlim_cur; 103 } 104 105 public final class UnixSocketAddress extends java.net.SocketAddress { 106 method public static android.system.UnixSocketAddress createFileSystem(String); 107 } 108 109} 110 111package com.android.okhttp.internalandroidapi { 112 113 public final class AndroidResponseCacheAdapter { 114 ctor public AndroidResponseCacheAdapter(@NonNull com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder); 115 method public void close() throws java.io.IOException; 116 method public void delete() throws java.io.IOException; 117 method public void flush() throws java.io.IOException; 118 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; 119 method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder(); 120 method public int getHitCount(); 121 method public long getMaxSize(); 122 method public int getNetworkCount(); 123 method public int getRequestCount(); 124 method public long getSize() throws java.io.IOException; 125 method @Nullable public java.net.CacheRequest put(@NonNull java.net.URI, @NonNull java.net.URLConnection) throws java.io.IOException; 126 } 127 128 public interface HasCacheHolder { 129 method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder(); 130 } 131 132 public static final class HasCacheHolder.CacheHolder { 133 method @NonNull public static com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder create(@NonNull java.io.File, long); 134 method public boolean isEquivalent(@NonNull java.io.File, long); 135 } 136 137} 138 139package dalvik.annotation.codegen { 140 141 @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 { 142 method public abstract int presentAfter(); 143 method public abstract Class<?> returnType(); 144 } 145 146 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public static @interface CovariantReturnType.CovariantReturnTypes { 147 method public abstract dalvik.annotation.codegen.CovariantReturnType[] value(); 148 } 149 150} 151 152package dalvik.annotation.optimization { 153 154 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface NeverCompile { 155 } 156 157 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.METHOD}) public @interface NeverInline { 158 } 159 160} 161 162package dalvik.system { 163 164 public final class AnnotatedStackTraceElement { 165 method @Nullable public Object getBlockedOn(); 166 method @Nullable public Object[] getHeldLocks(); 167 method @NonNull public StackTraceElement getStackTraceElement(); 168 } 169 170 public class AppSpecializationHooks { 171 method public static void handleCompatChangesBeforeBindingApplication(); 172 } 173 174 public class BaseDexClassLoader extends java.lang.ClassLoader { 175 method public void addDexPath(@Nullable String); 176 method public void addNativePath(@NonNull java.util.Collection<java.lang.String>); 177 method @NonNull public String getLdLibraryPath(); 178 method public void reportClassLoaderChain(); 179 method public static void setReporter(@Nullable dalvik.system.BaseDexClassLoader.Reporter); 180 } 181 182 public static interface BaseDexClassLoader.Reporter { 183 method public void report(@NonNull java.util.Map<java.lang.String,java.lang.String>); 184 } 185 186 public final class BlockGuard { 187 method @NonNull public static dalvik.system.BlockGuard.Policy getThreadPolicy(); 188 method @NonNull public static dalvik.system.BlockGuard.VmPolicy getVmPolicy(); 189 method public static void setThreadPolicy(@NonNull dalvik.system.BlockGuard.Policy); 190 method public static void setVmPolicy(@NonNull dalvik.system.BlockGuard.VmPolicy); 191 field public static final dalvik.system.BlockGuard.Policy LAX_POLICY; 192 field public static final dalvik.system.BlockGuard.VmPolicy LAX_VM_POLICY; 193 } 194 195 public static interface BlockGuard.Policy { 196 method public int getPolicyMask(); 197 method public void onReadFromDisk(); 198 method public void onUnbufferedIO(); 199 method public void onWriteToDisk(); 200 } 201 202 public static interface BlockGuard.VmPolicy { 203 method public void onPathAccess(@NonNull String); 204 } 205 206 public final class CloseGuard { 207 method public void close(); 208 method public static dalvik.system.CloseGuard get(); 209 method public static dalvik.system.CloseGuard.Reporter getReporter(); 210 method public void open(String); 211 method public void openWithCallSite(String, String); 212 method public static void setEnabled(boolean); 213 method public static void setReporter(dalvik.system.CloseGuard.Reporter); 214 method public void warnIfOpen(); 215 } 216 217 public static interface CloseGuard.Reporter { 218 method public void report(String, Throwable); 219 method public default void report(String); 220 } 221 222 public final class DelegateLastClassLoader extends dalvik.system.PathClassLoader { 223 ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[]); 224 ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[], ClassLoader[]); 225 } 226 227 public final class DexFile { 228 method @Deprecated @NonNull public static dalvik.system.DexFile.OptimizationInfo getDexFileOptimizationInfo(@NonNull String, @NonNull String) throws java.io.FileNotFoundException; 229 method @Nullable public static String[] getDexFileOutputPaths(@NonNull String, @NonNull String) throws java.io.FileNotFoundException; 230 method @Deprecated public static int getDexOptNeeded(@NonNull String, @NonNull String, @NonNull String, @Nullable String, boolean, boolean) throws java.io.FileNotFoundException, java.io.IOException; 231 method @NonNull public static String getSafeModeCompilerFilter(@NonNull String); 232 method public static boolean isOptimizedCompilerFilter(@NonNull String); 233 method public static boolean isProfileGuidedCompilerFilter(@NonNull String); 234 method public static boolean isValidCompilerFilter(@NonNull String); 235 method public static boolean isVerifiedCompilerFilter(@NonNull String); 236 field @Deprecated public static final int DEX2OAT_FOR_FILTER = 3; // 0x3 237 field @Deprecated public static final int NO_DEXOPT_NEEDED = 0; // 0x0 238 } 239 240 public static final class DexFile.OptimizationInfo { 241 method @NonNull public String getReason(); 242 method @NonNull public String getStatus(); 243 } 244 245 public class PathClassLoader extends dalvik.system.BaseDexClassLoader { 246 ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[]); 247 ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[], @Nullable ClassLoader[]); 248 } 249 250 public final class RuntimeHooks { 251 method public static void setTimeZoneIdSupplier(@NonNull java.util.function.Supplier<java.lang.String>); 252 method public static void setUncaughtExceptionPreHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler); 253 } 254 255 public abstract class SocketTagger { 256 ctor public SocketTagger(); 257 method public static dalvik.system.SocketTagger get(); 258 method public static void set(dalvik.system.SocketTagger); 259 method public abstract void tag(java.io.FileDescriptor) throws java.net.SocketException; 260 method public final void tag(java.net.Socket) throws java.net.SocketException; 261 method public final void tag(java.net.DatagramSocket) throws java.net.SocketException; 262 method public abstract void untag(java.io.FileDescriptor) throws java.net.SocketException; 263 method public final void untag(java.net.Socket) throws java.net.SocketException; 264 method public final void untag(java.net.DatagramSocket) throws java.net.SocketException; 265 } 266 267 public final class VMDebug { 268 method @FlaggedApi("com.android.libcore.appinfo") public static void addApplication(@NonNull String); 269 method public static void attachAgent(String, ClassLoader) throws java.io.IOException; 270 method public static long countInstancesOfClass(Class, boolean); 271 method public static long[] countInstancesOfClasses(Class[], boolean); 272 method public static void dumpHprofData(String) throws java.io.IOException; 273 method public static void dumpHprofData(String, java.io.FileDescriptor) throws java.io.IOException; 274 method public static void dumpHprofDataDdms(); 275 method @FlaggedApi("com.android.art.flags.always_enable_profile_code") public static void dumpLowOverheadTrace(@NonNull dalvik.system.VMDebug.TraceDestination); 276 method public static void dumpReferenceTables(); 277 method public static int getAllocCount(int); 278 method @FlaggedApi("com.android.art.flags.executable_method_file_offsets") @Nullable public static dalvik.system.VMDebug.ExecutableMethodFileOffsets getExecutableMethodFileOffsets(@NonNull java.lang.reflect.Method); 279 method @FlaggedApi("com.android.art.flags.executable_method_file_offsets_v2") @Nullable public static dalvik.system.VMDebug.ExecutableMethodFileOffsets getExecutableMethodFileOffsets(@NonNull java.lang.reflect.Executable); 280 method public static int getLoadedClassCount(); 281 method public static int getMethodTracingMode(); 282 method public static String getRuntimeStat(String); 283 method public static java.util.Map<java.lang.String,java.lang.String> getRuntimeStats(); 284 method public static String[] getVmFeatureList(); 285 method public static boolean isDebuggerConnected(); 286 method public static boolean isDebuggingEnabled(); 287 method public static long lastDebuggerActivity(); 288 method public static void printLoadedClasses(int); 289 method @FlaggedApi("com.android.libcore.appinfo") public static void removeApplication(@NonNull String); 290 method public static void resetAllocCount(int); 291 method public static void setAllocTrackerStackDepth(int); 292 method @FlaggedApi("com.android.libcore.appinfo") public static void setCurrentProcessName(@NonNull String); 293 method @FlaggedApi("com.android.libcore.appinfo") public static void setUserId(int); 294 method @FlaggedApi("com.android.libcore.appinfo") public static void setWaitingForDebugger(boolean); 295 method public static void startAllocCounting(); 296 method @FlaggedApi("com.android.art.flags.always_enable_profile_code") public static void startLowOverheadTraceForAllMethods(); 297 method @FlaggedApi("com.android.art.flags.always_enable_profile_code") public static void startLowOverheadTraceForLongRunningMethods(long); 298 method public static void startMethodTracing(String, int, int, boolean, int); 299 method public static void startMethodTracing(String, java.io.FileDescriptor, int, int, boolean, int, boolean); 300 method public static void startMethodTracingDdms(int, int, boolean, int); 301 method public static void stopAllocCounting(); 302 method @FlaggedApi("com.android.art.flags.always_enable_profile_code") public static void stopLowOverheadTrace(); 303 method public static void stopMethodTracing(); 304 method public static void suspendAllAndSendVmStart(); 305 method public static long threadCpuTimeNanos(); 306 field public static final int KIND_ALL_COUNTS = -1; // 0xffffffff 307 field public static final int KIND_GLOBAL_ALLOCATED_BYTES = 2; // 0x2 308 field public static final int KIND_GLOBAL_ALLOCATED_OBJECTS = 1; // 0x1 309 field public static final int KIND_GLOBAL_CLASS_INIT_COUNT = 32; // 0x20 310 field public static final int KIND_GLOBAL_CLASS_INIT_TIME = 64; // 0x40 311 field public static final int KIND_GLOBAL_FREED_BYTES = 8; // 0x8 312 field public static final int KIND_GLOBAL_FREED_OBJECTS = 4; // 0x4 313 field public static final int KIND_GLOBAL_GC_INVOCATIONS = 16; // 0x10 314 field public static final int KIND_THREAD_ALLOCATED_BYTES = 131072; // 0x20000 315 field public static final int KIND_THREAD_ALLOCATED_OBJECTS = 65536; // 0x10000 316 field public static final int KIND_THREAD_GC_INVOCATIONS = 1048576; // 0x100000 317 field public static final int TRACE_COUNT_ALLOCS = 1; // 0x1 318 } 319 320 @FlaggedApi("com.android.art.flags.executable_method_file_offsets") public static class VMDebug.ExecutableMethodFileOffsets { 321 method @FlaggedApi("com.android.art.flags.executable_method_file_offsets") public long getContainerOffset(); 322 method @FlaggedApi("com.android.art.flags.executable_method_file_offsets") @NonNull public String getContainerPath(); 323 method @FlaggedApi("com.android.art.flags.executable_method_file_offsets") public long getMethodOffset(); 324 } 325 326 @FlaggedApi("com.android.art.flags.always_enable_profile_code") public static class VMDebug.TraceDestination { 327 method @FlaggedApi("com.android.art.flags.always_enable_profile_code") @NonNull public static dalvik.system.VMDebug.TraceDestination fromFileDescriptor(@NonNull java.io.FileDescriptor); 328 method @FlaggedApi("com.android.art.flags.always_enable_profile_code") @NonNull public static dalvik.system.VMDebug.TraceDestination fromFileName(@NonNull String); 329 } 330 331 public final class VMRuntime { 332 method @FlaggedApi("com.android.libcore.post_cleanup_apis") public static void addPostCleanupCallback(@NonNull Runnable); 333 method public long addressOf(Object); 334 method public static void bootCompleted(); 335 method public void clampGrowthLimit(); 336 method public void clearGrowthLimit(); 337 method public static String getCurrentInstructionSet(); 338 method public static String getInstructionSet(String); 339 method public static dalvik.system.VMRuntime getRuntime(); 340 method public int getTargetSdkVersion(); 341 method public boolean is64Bit(); 342 method public static boolean is64BitAbi(String); 343 method public static boolean is64BitInstructionSet(String); 344 method public boolean isCheckJniEnabled(); 345 method public boolean isNativeDebuggable(); 346 method public static boolean isValidClassLoaderContext(String); 347 method public Object newNonMovableArray(Class<?>, int); 348 method public Object newUnpaddedArray(Class<?>, int); 349 method public void notifyStartupCompleted(); 350 method public void preloadDexCaches(); 351 method public static void registerAppInfo(String, String, String, String[], int); 352 method public void registerNativeAllocation(long); 353 method @Deprecated public void registerNativeAllocation(int); 354 method public void registerNativeFree(long); 355 method @Deprecated public void registerNativeFree(int); 356 method public static void registerSensitiveThread(); 357 method @FlaggedApi("com.android.libcore.post_cleanup_apis") public static void removePostCleanupCallback(@NonNull Runnable); 358 method public void requestConcurrentGC(); 359 method public static void resetJitCounters(); 360 method public static void setDedupeHiddenApiWarnings(boolean); 361 method public void setDisabledCompatChanges(long[]); 362 method public void setHiddenApiAccessLogSamplingRate(int); 363 method public void setHiddenApiExemptions(String[]); 364 method public static void setHiddenApiUsageLogger(dalvik.system.VMRuntime.HiddenApiUsageLogger); 365 method public static void setNonSdkApiUsageConsumer(java.util.function.Consumer<java.lang.String>); 366 method public static void setProcessDataDirectory(String); 367 method public static void setProcessPackageName(String); 368 method public void setTargetSdkVersion(int); 369 method public void updateProcessState(int); 370 method public String vmInstructionSet(); 371 method public String vmLibrary(); 372 field public static final int CODE_PATH_TYPE_PRIMARY_APK = 1; // 0x1 373 field public static final int CODE_PATH_TYPE_SECONDARY_DEX = 4; // 0x4 374 field public static final int CODE_PATH_TYPE_SPLIT_APK = 2; // 0x2 375 field public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000; // 0x2710 376 } 377 378 public static interface VMRuntime.HiddenApiUsageLogger { 379 method public void hiddenApiUsed(int, String, String, int, boolean); 380 field public static final int ACCESS_METHOD_JNI = 2; // 0x2 381 field public static final int ACCESS_METHOD_LINKING = 3; // 0x3 382 field public static final int ACCESS_METHOD_NONE = 0; // 0x0 383 field public static final int ACCESS_METHOD_REFLECTION = 1; // 0x1 384 } 385 386 public final class VMStack { 387 method @Nullable public static dalvik.system.AnnotatedStackTraceElement[] getAnnotatedThreadStackTrace(Thread); 388 } 389 390 public final class ZygoteHooks { 391 method public static void gcAndFinalize(); 392 method public static boolean isIndefiniteThreadSuspensionSafe(); 393 method public static void onBeginPreload(); 394 method public static void onEndPreload(); 395 method public static void postForkChild(int, boolean, boolean, String); 396 method public static void postForkCommon(); 397 method public static void postForkSystemServer(int); 398 method public static void preFork(); 399 method public static void startZygoteNoThreadCreation(); 400 method public static void stopZygoteNoThreadCreation(); 401 } 402 403} 404 405package java.io { 406 407 public final class FileDescriptor { 408 method public int getInt$(); 409 method public void setInt$(int); 410 } 411 412 public class FileInputStream extends java.io.InputStream { 413 ctor public FileInputStream(java.io.FileDescriptor, boolean); 414 } 415 416} 417 418package java.lang { 419 420 public class Thread implements java.lang.Runnable { 421 method public static java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionPreHandler(); 422 method public static void setUncaughtExceptionPreHandler(java.lang.Thread.UncaughtExceptionHandler); 423 } 424 425} 426 427package java.net { 428 429 public class DatagramSocket implements java.io.Closeable { 430 method public java.io.FileDescriptor getFileDescriptor$(); 431 } 432 433 public final class Inet4Address extends java.net.InetAddress { 434 field public static final java.net.InetAddress ALL; 435 field public static final java.net.InetAddress ANY; 436 field public static final java.net.InetAddress LOOPBACK; 437 } 438 439 public final class Inet6Address extends java.net.InetAddress { 440 field public static final java.net.InetAddress ANY; 441 field public static final java.net.InetAddress LOOPBACK; 442 } 443 444 public class InetAddress implements java.io.Serializable { 445 method public static void clearDnsCache(); 446 method @NonNull public static java.net.InetAddress[] getAllByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException; 447 method @NonNull public static java.net.InetAddress getByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException; 448 method @Deprecated public static boolean isNumeric(String); 449 method @Deprecated public static java.net.InetAddress parseNumericAddress(String); 450 } 451 452 public class InetSocketAddress extends java.net.SocketAddress { 453 ctor public InetSocketAddress(); 454 } 455 456 public class ServerSocket implements java.io.Closeable { 457 method public java.net.SocketImpl getImpl() throws java.net.SocketException; 458 } 459 460 public class Socket implements java.io.Closeable { 461 method public java.io.FileDescriptor getFileDescriptor$(); 462 } 463 464 public abstract class SocketImpl implements java.net.SocketOptions { 465 method public java.io.FileDescriptor getFD$(); 466 } 467 468} 469 470package java.nio { 471 472 public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer> { 473 method public void setAccessible(boolean); 474 } 475 476 public class DirectByteBuffer extends java.nio.MappedByteBuffer { 477 ctor public DirectByteBuffer(int, long, java.io.FileDescriptor, Runnable, boolean); 478 method public final long address(); 479 method public final java.nio.CharBuffer asCharBuffer(); 480 method public final java.nio.DoubleBuffer asDoubleBuffer(); 481 method public final java.nio.FloatBuffer asFloatBuffer(); 482 method public final java.nio.IntBuffer asIntBuffer(); 483 method public final java.nio.LongBuffer asLongBuffer(); 484 method public final java.nio.ByteBuffer asReadOnlyBuffer(); 485 method public final java.nio.ShortBuffer asShortBuffer(); 486 method public final java.nio.ByteBuffer compact(); 487 method public final java.nio.MappedByteBuffer duplicate(); 488 method public final byte get(); 489 method public final byte get(int); 490 method public final char getChar(); 491 method public final char getChar(int); 492 method public final double getDouble(); 493 method public final double getDouble(int); 494 method public final float getFloat(); 495 method public final float getFloat(int); 496 method public int getInt(); 497 method public int getInt(int); 498 method public final long getLong(); 499 method public final long getLong(int); 500 method public final short getShort(); 501 method public final short getShort(int); 502 method public final boolean isDirect(); 503 method public final boolean isReadOnly(); 504 method public final java.nio.ByteBuffer put(byte); 505 method public final java.nio.ByteBuffer put(int, byte); 506 method public final java.nio.ByteBuffer putChar(char); 507 method public final java.nio.ByteBuffer putChar(int, char); 508 method public final java.nio.ByteBuffer putDouble(double); 509 method public final java.nio.ByteBuffer putDouble(int, double); 510 method public final java.nio.ByteBuffer putFloat(float); 511 method public final java.nio.ByteBuffer putFloat(int, float); 512 method public final java.nio.ByteBuffer putInt(int); 513 method public final java.nio.ByteBuffer putInt(int, int); 514 method public final java.nio.ByteBuffer putLong(long); 515 method public final java.nio.ByteBuffer putLong(int, long); 516 method public final java.nio.ByteBuffer putShort(short); 517 method public final java.nio.ByteBuffer putShort(int, short); 518 method public final void setAccessible(boolean); 519 method public final java.nio.MappedByteBuffer slice(); 520 method public final java.nio.MappedByteBuffer slice(int, int); 521 } 522 523 public final class NIOAccess { 524 method public static Object getBaseArray(java.nio.Buffer); 525 method public static int getBaseArrayOffset(java.nio.Buffer); 526 } 527 528 public final class NioUtils { 529 method public static void freeDirectBuffer(java.nio.ByteBuffer); 530 method public static byte[] unsafeArray(java.nio.ByteBuffer); 531 method public static int unsafeArrayOffset(java.nio.ByteBuffer); 532 } 533 534} 535 536package java.security { 537 538 public abstract class Provider extends java.util.Properties { 539 method public void warmUpServiceProvision(); 540 } 541 542 public abstract class Signature extends java.security.SignatureSpi { 543 method public java.security.SignatureSpi getCurrentSpi(); 544 } 545 546} 547 548package java.text { 549 550 public abstract class DateFormat extends java.text.Format { 551 method public static final void set24HourTimePref(Boolean); 552 } 553 554} 555 556package java.util { 557 558 public class LinkedHashMap<K, V> extends java.util.HashMap<K,V> implements java.util.Map<K,V> java.util.SequencedMap<K,V> { 559 method public java.util.Map.Entry<K,V> eldest(); 560 } 561 562} 563 564package java.util.zip { 565 566 public class ZipEntry implements java.lang.Cloneable { 567 method public long getDataOffset(); 568 } 569 570} 571 572package javax.crypto { 573 574 public class Cipher { 575 method public javax.crypto.CipherSpi getCurrentSpi(); 576 } 577 578 public class KeyAgreement { 579 method public javax.crypto.KeyAgreementSpi getCurrentSpi(); 580 } 581 582 public class Mac implements java.lang.Cloneable { 583 method public javax.crypto.MacSpi getCurrentSpi(); 584 } 585 586} 587 588package javax.net.ssl { 589 590 public abstract class HttpsURLConnection extends java.net.HttpURLConnection { 591 method public static javax.net.ssl.HostnameVerifier getStrictHostnameVerifier(); 592 } 593 594} 595 596package libcore.content.type { 597 598 public final class MimeMap { 599 method @NonNull public libcore.content.type.MimeMap.Builder buildUpon(); 600 method @NonNull public static libcore.content.type.MimeMap.Builder builder(); 601 method @NonNull public java.util.Set<java.lang.String> extensions(); 602 method @NonNull public static libcore.content.type.MimeMap getDefault(); 603 method @Nullable public String guessExtensionFromMimeType(@Nullable String); 604 method @Nullable public String guessMimeTypeFromExtension(@Nullable String); 605 method public boolean hasExtension(@Nullable String); 606 method public boolean hasMimeType(@Nullable String); 607 method @NonNull public java.util.Set<java.lang.String> mimeTypes(); 608 method public static void setDefaultSupplier(@NonNull java.util.function.Supplier<libcore.content.type.MimeMap>); 609 } 610 611 public static final class MimeMap.Builder { 612 method @NonNull public libcore.content.type.MimeMap.Builder addMimeMapping(@NonNull String, @NonNull java.util.List<java.lang.String>); 613 method @NonNull public libcore.content.type.MimeMap build(); 614 } 615 616} 617 618package libcore.io { 619 620 public class ForwardingOs implements libcore.io.Os { 621 ctor protected ForwardingOs(@NonNull libcore.io.Os); 622 method public boolean access(@Nullable String, int) throws android.system.ErrnoException; 623 method public java.io.FileDescriptor open(@Nullable String, int, int) throws android.system.ErrnoException; 624 method public void remove(@Nullable String) throws android.system.ErrnoException; 625 method public void rename(@Nullable String, @Nullable String) throws android.system.ErrnoException; 626 method @Nullable public android.system.StructStat stat(@Nullable String) throws android.system.ErrnoException; 627 method public void unlink(@Nullable String) throws android.system.ErrnoException; 628 } 629 630 public final class IoBridge { 631 method public static void closeAndSignalBlockedThreads(@NonNull java.io.FileDescriptor) throws java.io.IOException; 632 method @NonNull public static java.io.FileDescriptor open(@NonNull String, int) throws java.io.FileNotFoundException; 633 method public static int read(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException; 634 method public static void write(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException; 635 } 636 637 public final class IoUtils { 638 method public static int acquireRawFd(@NonNull java.io.FileDescriptor); 639 method public static void close(@Nullable java.io.FileDescriptor) throws java.io.IOException; 640 method public static void closeQuietly(@Nullable AutoCloseable); 641 method public static void closeQuietly(@Nullable java.io.FileDescriptor); 642 method public static void closeQuietly(@Nullable java.net.Socket); 643 method @NonNull public static byte[] readFileAsByteArray(@NonNull String) throws java.io.IOException; 644 method @NonNull public static String readFileAsString(@NonNull String) throws java.io.IOException; 645 method public static void setBlocking(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException; 646 method public static void setFdOwner(@NonNull java.io.FileDescriptor, @NonNull Object); 647 } 648 649 public final class Memory { 650 method public static void memmove(@NonNull Object, int, @NonNull Object, int, long); 651 method public static int peekInt(@NonNull byte[], int, @NonNull java.nio.ByteOrder); 652 method public static short peekShort(@NonNull byte[], int, @NonNull java.nio.ByteOrder); 653 method public static void pokeInt(@NonNull byte[], int, int, @NonNull java.nio.ByteOrder); 654 method public static void pokeLong(@NonNull byte[], int, long, @NonNull java.nio.ByteOrder); 655 method public static void pokeShort(@NonNull byte[], int, short, @NonNull java.nio.ByteOrder); 656 } 657 658 public interface Os { 659 method public static boolean compareAndSetDefault(libcore.io.Os, libcore.io.Os); 660 method public static libcore.io.Os getDefault(); 661 } 662 663 public final class Streams { 664 method public static int copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException; 665 method public static void readFully(@NonNull java.io.InputStream, @NonNull byte[]) throws java.io.IOException; 666 method @NonNull public static byte[] readFully(@NonNull java.io.InputStream) throws java.io.IOException; 667 method @NonNull public static String readFully(@NonNull java.io.Reader) throws java.io.IOException; 668 method @NonNull public static byte[] readFullyNoClose(@NonNull java.io.InputStream) throws java.io.IOException; 669 method public static int readSingleByte(@NonNull java.io.InputStream) throws java.io.IOException; 670 method public static long skipByReading(@NonNull java.io.InputStream, long) throws java.io.IOException; 671 method public static void writeSingleByte(@NonNull java.io.OutputStream, int) throws java.io.IOException; 672 } 673 674} 675 676package libcore.net { 677 678 public class InetAddressUtils { 679 method public static boolean isNumericAddress(String); 680 method public static java.net.InetAddress parseNumericAddress(String); 681 } 682 683 public abstract class NetworkSecurityPolicy { 684 ctor public NetworkSecurityPolicy(); 685 method public static libcore.net.NetworkSecurityPolicy getInstance(); 686 method public abstract boolean isCertificateTransparencyVerificationRequired(String); 687 method public abstract boolean isCleartextTrafficPermitted(); 688 method public abstract boolean isCleartextTrafficPermitted(String); 689 method public static void setInstance(libcore.net.NetworkSecurityPolicy); 690 } 691 692} 693 694package libcore.net.event { 695 696 public final class NetworkEventDispatcher { 697 method public void dispatchNetworkConfigurationChange(); 698 method public static libcore.net.event.NetworkEventDispatcher getInstance(); 699 } 700 701} 702 703package libcore.net.http { 704 705 public interface Dns { 706 method @NonNull public java.util.List<java.net.InetAddress> lookup(@Nullable String) throws java.net.UnknownHostException; 707 } 708 709 public class HttpURLConnectionFactory { 710 method @NonNull public static libcore.net.http.HttpURLConnectionFactory createInstance(); 711 method public java.net.URLConnection openConnection(@NonNull java.net.URL, @NonNull javax.net.SocketFactory, @NonNull java.net.Proxy) throws java.io.IOException; 712 method public void setDns(@NonNull libcore.net.http.Dns); 713 method public void setNewConnectionPool(int, long, @NonNull java.util.concurrent.TimeUnit); 714 } 715 716} 717 718package libcore.util { 719 720 public final class EmptyArray { 721 field @NonNull public static final boolean[] BOOLEAN; 722 field @NonNull public static final byte[] BYTE; 723 field @NonNull public static final float[] FLOAT; 724 field @NonNull public static final int[] INT; 725 field @NonNull public static final long[] LONG; 726 field @NonNull public static final Object[] OBJECT; 727 field @NonNull public static final String[] STRING; 728 } 729 730 public final class FP16 { 731 method public static short ceil(short); 732 method public static int compare(short, short); 733 method public static boolean equals(short, short); 734 method public static short floor(short); 735 method public static boolean greater(short, short); 736 method public static boolean greaterEquals(short, short); 737 method public static boolean isInfinite(short); 738 method public static boolean isNaN(short); 739 method public static boolean isNormalized(short); 740 method public static boolean less(short, short); 741 method public static boolean lessEquals(short, short); 742 method public static short max(short, short); 743 method public static short min(short, short); 744 method public static short rint(short); 745 method public static float toFloat(short); 746 method public static short toHalf(float); 747 method public static String toHexString(short); 748 method public static short trunc(short); 749 field public static final short EPSILON = 5120; // 0x1400 750 field public static final int EXPONENT_BIAS = 15; // 0xf 751 field public static final int EXPONENT_SHIFT = 10; // 0xa 752 field public static final int EXPONENT_SIGNIFICAND_MASK = 32767; // 0x7fff 753 field public static final short LOWEST_VALUE = -1025; // 0xfffffbff 754 field public static final int MAX_EXPONENT = 15; // 0xf 755 field public static final short MAX_VALUE = 31743; // 0x7bff 756 field public static final int MIN_EXPONENT = -14; // 0xfffffff2 757 field public static final short MIN_NORMAL = 1024; // 0x400 758 field public static final short MIN_VALUE = 1; // 0x1 759 field public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00 760 field public static final short NEGATIVE_ZERO = -32768; // 0xffff8000 761 field public static final short NaN = 32256; // 0x7e00 762 field public static final short POSITIVE_INFINITY = 31744; // 0x7c00 763 field public static final short POSITIVE_ZERO = 0; // 0x0 764 field public static final int SHIFTED_EXPONENT_MASK = 31; // 0x1f 765 field public static final int SIGNIFICAND_MASK = 1023; // 0x3ff 766 field public static final int SIGN_MASK = 32768; // 0x8000 767 field public static final int SIGN_SHIFT = 15; // 0xf 768 field public static final int SIZE = 16; // 0x10 769 } 770 771 public class HexEncoding { 772 method public static byte[] decode(String) throws java.lang.IllegalArgumentException; 773 method public static byte[] decode(String, boolean) throws java.lang.IllegalArgumentException; 774 method public static byte[] decode(char[]) throws java.lang.IllegalArgumentException; 775 method public static byte[] decode(char[], boolean) throws java.lang.IllegalArgumentException; 776 method public static char[] encode(byte[]); 777 method public static char[] encode(byte[], boolean); 778 method public static char[] encode(byte[], int, int); 779 method public static String encodeToString(byte, boolean); 780 method public static String encodeToString(byte[]); 781 method public static String encodeToString(byte[], boolean); 782 } 783 784 public class NativeAllocationRegistry { 785 ctor public NativeAllocationRegistry(@NonNull ClassLoader, long, long); 786 method public static void applyFreeFunction(long, long); 787 method @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long, long); 788 method @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long); 789 method @FlaggedApi("com.android.libcore.native_metrics") @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull Class, long, long); 790 method @FlaggedApi("com.android.libcore.native_metrics") @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull Class, long); 791 method @NonNull public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull ClassLoader, long, long); 792 method @FlaggedApi("com.android.libcore.native_metrics") @NonNull public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull Class, long, long); 793 method @FlaggedApi("com.android.libcore.native_metrics") @NonNull public static java.util.Collection<libcore.util.NativeAllocationRegistry.Metrics> getMetrics(); 794 method @NonNull public Runnable registerNativeAllocation(@NonNull Object, long); 795 } 796 797 @FlaggedApi("com.android.libcore.native_metrics") public static final class NativeAllocationRegistry.Metrics { 798 method @NonNull public String getClassName(); 799 method public long getMallocedBytes(); 800 method public long getMallocedCount(); 801 method public long getNonmallocedBytes(); 802 method public long getNonmallocedCount(); 803 } 804 805 public class SneakyThrow { 806 method public static void sneakyThrow(@NonNull Throwable); 807 } 808 809 public class XmlObjectFactory { 810 method @NonNull public static org.xml.sax.XMLReader newXMLReader(); 811 method @NonNull public static org.xmlpull.v1.XmlPullParser newXmlPullParser(); 812 method @NonNull public static org.xmlpull.v1.XmlSerializer newXmlSerializer(); 813 } 814 815} 816 817package org.apache.harmony.dalvik.ddmc { 818 819 public class Chunk { 820 ctor public Chunk(int, byte[], int, int); 821 ctor public Chunk(int, java.nio.ByteBuffer); 822 field public int type; 823 } 824 825 public abstract class ChunkHandler { 826 ctor public ChunkHandler(); 827 method public static org.apache.harmony.dalvik.ddmc.Chunk createFailChunk(int, String); 828 method public abstract org.apache.harmony.dalvik.ddmc.Chunk handleChunk(org.apache.harmony.dalvik.ddmc.Chunk); 829 method public static String name(int); 830 method public abstract void onConnected(); 831 method public abstract void onDisconnected(); 832 method public static int type(String); 833 method public static java.nio.ByteBuffer wrapChunk(org.apache.harmony.dalvik.ddmc.Chunk); 834 field public static final java.nio.ByteOrder CHUNK_ORDER; 835 } 836 837 public final class DdmServer { 838 method public static void registerHandler(int, org.apache.harmony.dalvik.ddmc.ChunkHandler); 839 method public static void registrationComplete(); 840 method public static void sendChunk(org.apache.harmony.dalvik.ddmc.Chunk); 841 method public static org.apache.harmony.dalvik.ddmc.ChunkHandler unregisterHandler(int); 842 } 843 844 public final class DdmVmInternal { 845 method public static void setRecentAllocationsTrackingEnabled(boolean); 846 method public static void setThreadNotifyEnabled(boolean); 847 } 848 849} 850 851package org.json { 852 853 public class JSONObject { 854 method @NonNull public java.util.Set<java.lang.String> keySet(); 855 } 856 857} 858 859package sun.misc { 860 861 public class Cleaner extends java.lang.ref.PhantomReference<java.lang.Object> { 862 method public void clean(); 863 method public static sun.misc.Cleaner create(Object, Runnable); 864 } 865 866 public final class Unsafe { 867 method public int arrayBaseOffset(Class); 868 method public int arrayIndexScale(Class); 869 method public void copyMemory(long, long, long); 870 method public boolean getBoolean(Object, long); 871 method public byte getByte(Object, long); 872 method public byte getByte(long); 873 method public double getDouble(Object, long); 874 method public double getDouble(long); 875 method public float getFloat(Object, long); 876 method public float getFloat(long); 877 method public int getInt(Object, long); 878 method public int getInt(long); 879 method public long getLong(Object, long); 880 method public long getLong(long); 881 method public Object getObject(Object, long); 882 method public static sun.misc.Unsafe getUnsafe(); 883 method public long objectFieldOffset(java.lang.reflect.Field); 884 method public void putBoolean(Object, long, boolean); 885 method public void putByte(Object, long, byte); 886 method public void putByte(long, byte); 887 method public void putDouble(Object, long, double); 888 method public void putDouble(long, double); 889 method public void putFloat(Object, long, float); 890 method public void putFloat(long, float); 891 method public void putInt(Object, long, int); 892 method public void putInt(long, int); 893 method public void putLong(Object, long, long); 894 method public void putLong(long, long); 895 method public void putObject(Object, long, Object); 896 } 897 898} 899 900package sun.security.jca { 901 902 public class Providers { 903 method public static Object startJarVerification(); 904 method public static void stopJarVerification(Object); 905 } 906 907} 908 909package sun.security.pkcs { 910 911 public class PKCS7 { 912 ctor public PKCS7(java.io.InputStream) throws java.io.IOException, sun.security.pkcs.ParsingException; 913 ctor public PKCS7(byte[]) throws sun.security.pkcs.ParsingException; 914 method public java.security.cert.X509Certificate[] getCertificates(); 915 method public sun.security.pkcs.SignerInfo[] getSignerInfos(); 916 method public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, java.io.InputStream) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.SignatureException; 917 method public sun.security.pkcs.SignerInfo[] verify(byte[]) throws java.security.NoSuchAlgorithmException, java.security.SignatureException; 918 } 919 920 public class ParsingException extends java.io.IOException { 921 } 922 923 public class SignerInfo { 924 ctor public SignerInfo(); 925 method public java.util.ArrayList<java.security.cert.X509Certificate> getCertificateChain(sun.security.pkcs.PKCS7) throws java.io.IOException; 926 } 927 928} 929 930package sun.security.util { 931 932 public final class ObjectIdentifier implements java.io.Serializable { 933 ctor public ObjectIdentifier(String) throws java.io.IOException; 934 } 935 936} 937 938package sun.security.x509 { 939 940 public class AlgorithmId implements java.io.Serializable { 941 ctor public AlgorithmId(sun.security.util.ObjectIdentifier); 942 method public String getName(); 943 } 944 945} 946 947