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 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 public static void attachAgent(String, ClassLoader) throws java.io.IOException; 269 method public static long countInstancesOfClass(Class, boolean); 270 method public static long[] countInstancesOfClasses(Class[], boolean); 271 method public static void dumpHprofData(String) throws java.io.IOException; 272 method public static void dumpHprofData(String, java.io.FileDescriptor) throws java.io.IOException; 273 method public static void dumpHprofDataDdms(); 274 method public static void dumpReferenceTables(); 275 method public static int getAllocCount(int); 276 method @Nullable public static dalvik.system.VMDebug.ExecutableMethodFileOffsets getExecutableMethodFileOffsets(@NonNull java.lang.reflect.Method); 277 method public static int getLoadedClassCount(); 278 method public static int getMethodTracingMode(); 279 method public static String getRuntimeStat(String); 280 method public static java.util.Map<java.lang.String,java.lang.String> getRuntimeStats(); 281 method public static String[] getVmFeatureList(); 282 method public static boolean isDebuggerConnected(); 283 method public static boolean isDebuggingEnabled(); 284 method public static long lastDebuggerActivity(); 285 method public static void printLoadedClasses(int); 286 method public static void resetAllocCount(int); 287 method public static void setAllocTrackerStackDepth(int); 288 method public static void startAllocCounting(); 289 method public static void startMethodTracing(String, int, int, boolean, int); 290 method public static void startMethodTracing(String, java.io.FileDescriptor, int, int, boolean, int, boolean); 291 method public static void startMethodTracingDdms(int, int, boolean, int); 292 method public static void stopAllocCounting(); 293 method public static void stopMethodTracing(); 294 method public static void suspendAllAndSendVmStart(); 295 method public static long threadCpuTimeNanos(); 296 field public static final int KIND_ALL_COUNTS = -1; // 0xffffffff 297 field public static final int KIND_GLOBAL_ALLOCATED_BYTES = 2; // 0x2 298 field public static final int KIND_GLOBAL_ALLOCATED_OBJECTS = 1; // 0x1 299 field public static final int KIND_GLOBAL_CLASS_INIT_COUNT = 32; // 0x20 300 field public static final int KIND_GLOBAL_CLASS_INIT_TIME = 64; // 0x40 301 field public static final int KIND_GLOBAL_FREED_BYTES = 8; // 0x8 302 field public static final int KIND_GLOBAL_FREED_OBJECTS = 4; // 0x4 303 field public static final int KIND_GLOBAL_GC_INVOCATIONS = 16; // 0x10 304 field public static final int KIND_THREAD_ALLOCATED_BYTES = 131072; // 0x20000 305 field public static final int KIND_THREAD_ALLOCATED_OBJECTS = 65536; // 0x10000 306 field public static final int KIND_THREAD_GC_INVOCATIONS = 1048576; // 0x100000 307 field public static final int TRACE_COUNT_ALLOCS = 1; // 0x1 308 } 309 310 public static class VMDebug.ExecutableMethodFileOffsets { 311 method public long getContainerOffset(); 312 method @NonNull public String getContainerPath(); 313 method public long getMethodOffset(); 314 } 315 316 public final class VMRuntime { 317 method public static void addPostCleanupCallback(@NonNull Runnable); 318 method public long addressOf(Object); 319 method public static void bootCompleted(); 320 method public void clampGrowthLimit(); 321 method public void clearGrowthLimit(); 322 method public static String getCurrentInstructionSet(); 323 method public static String getInstructionSet(String); 324 method public static dalvik.system.VMRuntime getRuntime(); 325 method public int getTargetSdkVersion(); 326 method public boolean is64Bit(); 327 method public static boolean is64BitAbi(String); 328 method public static boolean is64BitInstructionSet(String); 329 method public boolean isCheckJniEnabled(); 330 method public boolean isNativeDebuggable(); 331 method public static boolean isValidClassLoaderContext(String); 332 method public Object newNonMovableArray(Class<?>, int); 333 method public Object newUnpaddedArray(Class<?>, int); 334 method public void notifyStartupCompleted(); 335 method public void preloadDexCaches(); 336 method public static void registerAppInfo(String, String, String, String[], int); 337 method public void registerNativeAllocation(long); 338 method @Deprecated public void registerNativeAllocation(int); 339 method public void registerNativeFree(long); 340 method @Deprecated public void registerNativeFree(int); 341 method public static void registerSensitiveThread(); 342 method public static void removePostCleanupCallback(@NonNull Runnable); 343 method public void requestConcurrentGC(); 344 method public static void resetJitCounters(); 345 method public static void setDedupeHiddenApiWarnings(boolean); 346 method public void setDisabledCompatChanges(long[]); 347 method public void setHiddenApiAccessLogSamplingRate(int); 348 method public void setHiddenApiExemptions(String[]); 349 method public static void setHiddenApiUsageLogger(dalvik.system.VMRuntime.HiddenApiUsageLogger); 350 method public static void setNonSdkApiUsageConsumer(java.util.function.Consumer<java.lang.String>); 351 method public static void setProcessDataDirectory(String); 352 method public static void setProcessPackageName(String); 353 method public void setTargetSdkVersion(int); 354 method public void updateProcessState(int); 355 method public String vmInstructionSet(); 356 method public String vmLibrary(); 357 field public static final int CODE_PATH_TYPE_PRIMARY_APK = 1; // 0x1 358 field public static final int CODE_PATH_TYPE_SECONDARY_DEX = 4; // 0x4 359 field public static final int CODE_PATH_TYPE_SPLIT_APK = 2; // 0x2 360 field public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000; // 0x2710 361 } 362 363 public static interface VMRuntime.HiddenApiUsageLogger { 364 method public void hiddenApiUsed(int, String, String, int, boolean); 365 field public static final int ACCESS_METHOD_JNI = 2; // 0x2 366 field public static final int ACCESS_METHOD_LINKING = 3; // 0x3 367 field public static final int ACCESS_METHOD_NONE = 0; // 0x0 368 field public static final int ACCESS_METHOD_REFLECTION = 1; // 0x1 369 } 370 371 public final class VMStack { 372 method @Nullable public static dalvik.system.AnnotatedStackTraceElement[] getAnnotatedThreadStackTrace(Thread); 373 } 374 375 public final class ZygoteHooks { 376 method public static void gcAndFinalize(); 377 method public static boolean isIndefiniteThreadSuspensionSafe(); 378 method public static void onBeginPreload(); 379 method public static void onEndPreload(); 380 method public static void postForkChild(int, boolean, boolean, String); 381 method public static void postForkCommon(); 382 method public static void postForkSystemServer(int); 383 method public static void preFork(); 384 method public static void startZygoteNoThreadCreation(); 385 method public static void stopZygoteNoThreadCreation(); 386 } 387 388} 389 390package java.io { 391 392 public final class FileDescriptor { 393 method public int getInt$(); 394 method public void setInt$(int); 395 } 396 397 public class FileInputStream extends java.io.InputStream { 398 ctor public FileInputStream(java.io.FileDescriptor, boolean); 399 } 400 401} 402 403package java.lang { 404 405 public class Thread implements java.lang.Runnable { 406 method public static java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionPreHandler(); 407 method public static void setUncaughtExceptionPreHandler(java.lang.Thread.UncaughtExceptionHandler); 408 } 409 410} 411 412package java.net { 413 414 public class DatagramSocket implements java.io.Closeable { 415 method public java.io.FileDescriptor getFileDescriptor$(); 416 } 417 418 public final class Inet4Address extends java.net.InetAddress { 419 field public static final java.net.InetAddress ALL; 420 field public static final java.net.InetAddress ANY; 421 field public static final java.net.InetAddress LOOPBACK; 422 } 423 424 public final class Inet6Address extends java.net.InetAddress { 425 field public static final java.net.InetAddress ANY; 426 field public static final java.net.InetAddress LOOPBACK; 427 } 428 429 public class InetAddress implements java.io.Serializable { 430 method public static void clearDnsCache(); 431 method @NonNull public static java.net.InetAddress[] getAllByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException; 432 method @NonNull public static java.net.InetAddress getByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException; 433 method @Deprecated public static boolean isNumeric(String); 434 method @Deprecated public static java.net.InetAddress parseNumericAddress(String); 435 } 436 437 public class InetSocketAddress extends java.net.SocketAddress { 438 ctor public InetSocketAddress(); 439 } 440 441 public class ServerSocket implements java.io.Closeable { 442 method public java.net.SocketImpl getImpl() throws java.net.SocketException; 443 } 444 445 public class Socket implements java.io.Closeable { 446 method public java.io.FileDescriptor getFileDescriptor$(); 447 } 448 449 public abstract class SocketImpl implements java.net.SocketOptions { 450 method public java.io.FileDescriptor getFD$(); 451 } 452 453} 454 455package java.nio { 456 457 public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer> { 458 method public void setAccessible(boolean); 459 } 460 461 public class DirectByteBuffer extends java.nio.MappedByteBuffer { 462 ctor public DirectByteBuffer(int, long, java.io.FileDescriptor, Runnable, boolean); 463 method public final long address(); 464 method public final java.nio.CharBuffer asCharBuffer(); 465 method public final java.nio.DoubleBuffer asDoubleBuffer(); 466 method public final java.nio.FloatBuffer asFloatBuffer(); 467 method public final java.nio.IntBuffer asIntBuffer(); 468 method public final java.nio.LongBuffer asLongBuffer(); 469 method public final java.nio.ByteBuffer asReadOnlyBuffer(); 470 method public final java.nio.ShortBuffer asShortBuffer(); 471 method public final java.nio.ByteBuffer compact(); 472 method public final java.nio.MappedByteBuffer duplicate(); 473 method public final byte get(); 474 method public final byte get(int); 475 method public final char getChar(); 476 method public final char getChar(int); 477 method public final double getDouble(); 478 method public final double getDouble(int); 479 method public final float getFloat(); 480 method public final float getFloat(int); 481 method public int getInt(); 482 method public int getInt(int); 483 method public final long getLong(); 484 method public final long getLong(int); 485 method public final short getShort(); 486 method public final short getShort(int); 487 method public final boolean isDirect(); 488 method public final boolean isReadOnly(); 489 method public final java.nio.ByteBuffer put(byte); 490 method public final java.nio.ByteBuffer put(int, byte); 491 method public final java.nio.ByteBuffer putChar(char); 492 method public final java.nio.ByteBuffer putChar(int, char); 493 method public final java.nio.ByteBuffer putDouble(double); 494 method public final java.nio.ByteBuffer putDouble(int, double); 495 method public final java.nio.ByteBuffer putFloat(float); 496 method public final java.nio.ByteBuffer putFloat(int, float); 497 method public final java.nio.ByteBuffer putInt(int); 498 method public final java.nio.ByteBuffer putInt(int, int); 499 method public final java.nio.ByteBuffer putLong(long); 500 method public final java.nio.ByteBuffer putLong(int, long); 501 method public final java.nio.ByteBuffer putShort(short); 502 method public final java.nio.ByteBuffer putShort(int, short); 503 method public final void setAccessible(boolean); 504 method public final java.nio.MappedByteBuffer slice(); 505 method public final java.nio.MappedByteBuffer slice(int, int); 506 } 507 508 public final class NIOAccess { 509 method public static Object getBaseArray(java.nio.Buffer); 510 method public static int getBaseArrayOffset(java.nio.Buffer); 511 } 512 513 public final class NioUtils { 514 method public static void freeDirectBuffer(java.nio.ByteBuffer); 515 method public static byte[] unsafeArray(java.nio.ByteBuffer); 516 method public static int unsafeArrayOffset(java.nio.ByteBuffer); 517 } 518 519} 520 521package java.security { 522 523 public abstract class Provider extends java.util.Properties { 524 method public void warmUpServiceProvision(); 525 } 526 527 public abstract class Signature extends java.security.SignatureSpi { 528 method public java.security.SignatureSpi getCurrentSpi(); 529 } 530 531} 532 533package java.text { 534 535 public abstract class DateFormat extends java.text.Format { 536 method public static final void set24HourTimePref(Boolean); 537 } 538 539} 540 541package java.util { 542 543 public class LinkedHashMap<K, V> extends java.util.HashMap<K,V> implements java.util.Map<K,V> java.util.SequencedMap<K,V> { 544 method public java.util.Map.Entry<K,V> eldest(); 545 } 546 547} 548 549package java.util.zip { 550 551 public class ZipEntry implements java.lang.Cloneable { 552 method public long getDataOffset(); 553 } 554 555} 556 557package javax.crypto { 558 559 public class Cipher { 560 method public javax.crypto.CipherSpi getCurrentSpi(); 561 } 562 563 public class KeyAgreement { 564 method public javax.crypto.KeyAgreementSpi getCurrentSpi(); 565 } 566 567 public class Mac implements java.lang.Cloneable { 568 method public javax.crypto.MacSpi getCurrentSpi(); 569 } 570 571} 572 573package javax.net.ssl { 574 575 public abstract class HttpsURLConnection extends java.net.HttpURLConnection { 576 method public static javax.net.ssl.HostnameVerifier getStrictHostnameVerifier(); 577 } 578 579} 580 581package libcore.content.type { 582 583 public final class MimeMap { 584 method @NonNull public libcore.content.type.MimeMap.Builder buildUpon(); 585 method @NonNull public static libcore.content.type.MimeMap.Builder builder(); 586 method @NonNull public java.util.Set<java.lang.String> extensions(); 587 method @NonNull public static libcore.content.type.MimeMap getDefault(); 588 method @Nullable public String guessExtensionFromMimeType(@Nullable String); 589 method @Nullable public String guessMimeTypeFromExtension(@Nullable String); 590 method public boolean hasExtension(@Nullable String); 591 method public boolean hasMimeType(@Nullable String); 592 method @NonNull public java.util.Set<java.lang.String> mimeTypes(); 593 method public static void setDefaultSupplier(@NonNull java.util.function.Supplier<libcore.content.type.MimeMap>); 594 } 595 596 public static final class MimeMap.Builder { 597 method @NonNull public libcore.content.type.MimeMap.Builder addMimeMapping(@NonNull String, @NonNull java.util.List<java.lang.String>); 598 method @NonNull public libcore.content.type.MimeMap build(); 599 } 600 601} 602 603package libcore.io { 604 605 public class ForwardingOs implements libcore.io.Os { 606 ctor protected ForwardingOs(@NonNull libcore.io.Os); 607 method public boolean access(@Nullable String, int) throws android.system.ErrnoException; 608 method public java.io.FileDescriptor open(@Nullable String, int, int) throws android.system.ErrnoException; 609 method public void remove(@Nullable String) throws android.system.ErrnoException; 610 method public void rename(@Nullable String, @Nullable String) throws android.system.ErrnoException; 611 method @Nullable public android.system.StructStat stat(@Nullable String) throws android.system.ErrnoException; 612 method public void unlink(@Nullable String) throws android.system.ErrnoException; 613 } 614 615 public final class IoBridge { 616 method public static void closeAndSignalBlockedThreads(@NonNull java.io.FileDescriptor) throws java.io.IOException; 617 method @NonNull public static java.io.FileDescriptor open(@NonNull String, int) throws java.io.FileNotFoundException; 618 method public static int read(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException; 619 method public static void write(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException; 620 } 621 622 public final class IoUtils { 623 method public static int acquireRawFd(@NonNull java.io.FileDescriptor); 624 method public static void close(@Nullable java.io.FileDescriptor) throws java.io.IOException; 625 method public static void closeQuietly(@Nullable AutoCloseable); 626 method public static void closeQuietly(@Nullable java.io.FileDescriptor); 627 method public static void closeQuietly(@Nullable java.net.Socket); 628 method @NonNull public static byte[] readFileAsByteArray(@NonNull String) throws java.io.IOException; 629 method @NonNull public static String readFileAsString(@NonNull String) throws java.io.IOException; 630 method public static void setBlocking(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException; 631 method public static void setFdOwner(@NonNull java.io.FileDescriptor, @NonNull Object); 632 } 633 634 public final class Memory { 635 method public static void memmove(@NonNull Object, int, @NonNull Object, int, long); 636 method public static int peekInt(@NonNull byte[], int, @NonNull java.nio.ByteOrder); 637 method public static short peekShort(@NonNull byte[], int, @NonNull java.nio.ByteOrder); 638 method public static void pokeInt(@NonNull byte[], int, int, @NonNull java.nio.ByteOrder); 639 method public static void pokeLong(@NonNull byte[], int, long, @NonNull java.nio.ByteOrder); 640 method public static void pokeShort(@NonNull byte[], int, short, @NonNull java.nio.ByteOrder); 641 } 642 643 public interface Os { 644 method public static boolean compareAndSetDefault(libcore.io.Os, libcore.io.Os); 645 method public static libcore.io.Os getDefault(); 646 } 647 648 public final class Streams { 649 method public static int copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException; 650 method public static void readFully(@NonNull java.io.InputStream, @NonNull byte[]) throws java.io.IOException; 651 method @NonNull public static byte[] readFully(@NonNull java.io.InputStream) throws java.io.IOException; 652 method @NonNull public static String readFully(@NonNull java.io.Reader) throws java.io.IOException; 653 method @NonNull public static byte[] readFullyNoClose(@NonNull java.io.InputStream) throws java.io.IOException; 654 method public static int readSingleByte(@NonNull java.io.InputStream) throws java.io.IOException; 655 method public static long skipByReading(@NonNull java.io.InputStream, long) throws java.io.IOException; 656 method public static void writeSingleByte(@NonNull java.io.OutputStream, int) throws java.io.IOException; 657 } 658 659} 660 661package libcore.net { 662 663 public class InetAddressUtils { 664 method public static boolean isNumericAddress(String); 665 method public static java.net.InetAddress parseNumericAddress(String); 666 } 667 668 public abstract class NetworkSecurityPolicy { 669 ctor public NetworkSecurityPolicy(); 670 method public static libcore.net.NetworkSecurityPolicy getInstance(); 671 method public abstract boolean isCertificateTransparencyVerificationRequired(String); 672 method public abstract boolean isCleartextTrafficPermitted(); 673 method public abstract boolean isCleartextTrafficPermitted(String); 674 method public static void setInstance(libcore.net.NetworkSecurityPolicy); 675 } 676 677} 678 679package libcore.net.event { 680 681 public final class NetworkEventDispatcher { 682 method public void dispatchNetworkConfigurationChange(); 683 method public static libcore.net.event.NetworkEventDispatcher getInstance(); 684 } 685 686} 687 688package libcore.net.http { 689 690 public interface Dns { 691 method @NonNull public java.util.List<java.net.InetAddress> lookup(@Nullable String) throws java.net.UnknownHostException; 692 } 693 694 public class HttpURLConnectionFactory { 695 method @NonNull public static libcore.net.http.HttpURLConnectionFactory createInstance(); 696 method public java.net.URLConnection openConnection(@NonNull java.net.URL, @NonNull javax.net.SocketFactory, @NonNull java.net.Proxy) throws java.io.IOException; 697 method public void setDns(@NonNull libcore.net.http.Dns); 698 method public void setNewConnectionPool(int, long, @NonNull java.util.concurrent.TimeUnit); 699 } 700 701} 702 703package libcore.util { 704 705 public final class EmptyArray { 706 field @NonNull public static final boolean[] BOOLEAN; 707 field @NonNull public static final byte[] BYTE; 708 field @NonNull public static final float[] FLOAT; 709 field @NonNull public static final int[] INT; 710 field @NonNull public static final long[] LONG; 711 field @NonNull public static final Object[] OBJECT; 712 field @NonNull public static final String[] STRING; 713 } 714 715 public final class FP16 { 716 method public static short ceil(short); 717 method public static int compare(short, short); 718 method public static boolean equals(short, short); 719 method public static short floor(short); 720 method public static boolean greater(short, short); 721 method public static boolean greaterEquals(short, short); 722 method public static boolean isInfinite(short); 723 method public static boolean isNaN(short); 724 method public static boolean isNormalized(short); 725 method public static boolean less(short, short); 726 method public static boolean lessEquals(short, short); 727 method public static short max(short, short); 728 method public static short min(short, short); 729 method public static short rint(short); 730 method public static float toFloat(short); 731 method public static short toHalf(float); 732 method public static String toHexString(short); 733 method public static short trunc(short); 734 field public static final short EPSILON = 5120; // 0x1400 735 field public static final int EXPONENT_BIAS = 15; // 0xf 736 field public static final int EXPONENT_SHIFT = 10; // 0xa 737 field public static final int EXPONENT_SIGNIFICAND_MASK = 32767; // 0x7fff 738 field public static final short LOWEST_VALUE = -1025; // 0xfffffbff 739 field public static final int MAX_EXPONENT = 15; // 0xf 740 field public static final short MAX_VALUE = 31743; // 0x7bff 741 field public static final int MIN_EXPONENT = -14; // 0xfffffff2 742 field public static final short MIN_NORMAL = 1024; // 0x400 743 field public static final short MIN_VALUE = 1; // 0x1 744 field public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00 745 field public static final short NEGATIVE_ZERO = -32768; // 0xffff8000 746 field public static final short NaN = 32256; // 0x7e00 747 field public static final short POSITIVE_INFINITY = 31744; // 0x7c00 748 field public static final short POSITIVE_ZERO = 0; // 0x0 749 field public static final int SHIFTED_EXPONENT_MASK = 31; // 0x1f 750 field public static final int SIGNIFICAND_MASK = 1023; // 0x3ff 751 field public static final int SIGN_MASK = 32768; // 0x8000 752 field public static final int SIGN_SHIFT = 15; // 0xf 753 field public static final int SIZE = 16; // 0x10 754 } 755 756 public class HexEncoding { 757 method public static byte[] decode(String) throws java.lang.IllegalArgumentException; 758 method public static byte[] decode(String, boolean) throws java.lang.IllegalArgumentException; 759 method public static byte[] decode(char[]) throws java.lang.IllegalArgumentException; 760 method public static byte[] decode(char[], boolean) throws java.lang.IllegalArgumentException; 761 method public static char[] encode(byte[]); 762 method public static char[] encode(byte[], boolean); 763 method public static char[] encode(byte[], int, int); 764 method public static String encodeToString(byte, boolean); 765 method public static String encodeToString(byte[]); 766 method public static String encodeToString(byte[], boolean); 767 } 768 769 public class NativeAllocationRegistry { 770 ctor public NativeAllocationRegistry(@NonNull ClassLoader, long, long); 771 method public static void applyFreeFunction(long, long); 772 method @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long, long); 773 method @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long); 774 method @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull Class, long, long); 775 method @NonNull public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull Class, long); 776 method @NonNull public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull ClassLoader, long, long); 777 method @NonNull public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull Class, long, long); 778 method @NonNull public static java.util.Collection<libcore.util.NativeAllocationRegistry.Metrics> getMetrics(); 779 method @NonNull public Runnable registerNativeAllocation(@NonNull Object, long); 780 } 781 782 public static final class NativeAllocationRegistry.Metrics { 783 method @NonNull public String getClassName(); 784 method public long getMallocedBytes(); 785 method public long getMallocedCount(); 786 method public long getNonmallocedBytes(); 787 method public long getNonmallocedCount(); 788 } 789 790 public class SneakyThrow { 791 method public static void sneakyThrow(@NonNull Throwable); 792 } 793 794 public class XmlObjectFactory { 795 method @NonNull public static org.xml.sax.XMLReader newXMLReader(); 796 method @NonNull public static org.xmlpull.v1.XmlPullParser newXmlPullParser(); 797 method @NonNull public static org.xmlpull.v1.XmlSerializer newXmlSerializer(); 798 } 799 800} 801 802package org.apache.harmony.dalvik.ddmc { 803 804 public class Chunk { 805 ctor public Chunk(int, byte[], int, int); 806 ctor public Chunk(int, java.nio.ByteBuffer); 807 field public int type; 808 } 809 810 public abstract class ChunkHandler { 811 ctor public ChunkHandler(); 812 method public static org.apache.harmony.dalvik.ddmc.Chunk createFailChunk(int, String); 813 method public abstract org.apache.harmony.dalvik.ddmc.Chunk handleChunk(org.apache.harmony.dalvik.ddmc.Chunk); 814 method public static String name(int); 815 method public abstract void onConnected(); 816 method public abstract void onDisconnected(); 817 method public static int type(String); 818 method public static java.nio.ByteBuffer wrapChunk(org.apache.harmony.dalvik.ddmc.Chunk); 819 field public static final java.nio.ByteOrder CHUNK_ORDER; 820 } 821 822 public final class DdmServer { 823 method public static void registerHandler(int, org.apache.harmony.dalvik.ddmc.ChunkHandler); 824 method public static void registrationComplete(); 825 method public static void sendChunk(org.apache.harmony.dalvik.ddmc.Chunk); 826 method public static org.apache.harmony.dalvik.ddmc.ChunkHandler unregisterHandler(int); 827 } 828 829 public final class DdmVmInternal { 830 method public static void setRecentAllocationsTrackingEnabled(boolean); 831 method public static void setThreadNotifyEnabled(boolean); 832 } 833 834} 835 836package org.json { 837 838 public class JSONObject { 839 method @NonNull public java.util.Set<java.lang.String> keySet(); 840 } 841 842} 843 844package sun.misc { 845 846 public class Cleaner extends java.lang.ref.PhantomReference<java.lang.Object> { 847 method public void clean(); 848 method public static sun.misc.Cleaner create(Object, Runnable); 849 } 850 851 public final class Unsafe { 852 method public int arrayBaseOffset(Class); 853 method public int arrayIndexScale(Class); 854 method public void copyMemory(long, long, long); 855 method public boolean getBoolean(Object, long); 856 method public byte getByte(Object, long); 857 method public byte getByte(long); 858 method public double getDouble(Object, long); 859 method public double getDouble(long); 860 method public float getFloat(Object, long); 861 method public float getFloat(long); 862 method public int getInt(Object, long); 863 method public int getInt(long); 864 method public long getLong(Object, long); 865 method public long getLong(long); 866 method public Object getObject(Object, long); 867 method public static sun.misc.Unsafe getUnsafe(); 868 method public long objectFieldOffset(java.lang.reflect.Field); 869 method public void putBoolean(Object, long, boolean); 870 method public void putByte(Object, long, byte); 871 method public void putByte(long, byte); 872 method public void putDouble(Object, long, double); 873 method public void putDouble(long, double); 874 method public void putFloat(Object, long, float); 875 method public void putFloat(long, float); 876 method public void putInt(Object, long, int); 877 method public void putInt(long, int); 878 method public void putLong(Object, long, long); 879 method public void putLong(long, long); 880 method public void putObject(Object, long, Object); 881 } 882 883} 884 885package sun.security.jca { 886 887 public class Providers { 888 method public static Object startJarVerification(); 889 method public static void stopJarVerification(Object); 890 } 891 892} 893 894package sun.security.pkcs { 895 896 public class PKCS7 { 897 ctor public PKCS7(java.io.InputStream) throws java.io.IOException, sun.security.pkcs.ParsingException; 898 ctor public PKCS7(byte[]) throws sun.security.pkcs.ParsingException; 899 method public java.security.cert.X509Certificate[] getCertificates(); 900 method public sun.security.pkcs.SignerInfo[] getSignerInfos(); 901 method public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, java.io.InputStream) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.SignatureException; 902 method public sun.security.pkcs.SignerInfo[] verify(byte[]) throws java.security.NoSuchAlgorithmException, java.security.SignatureException; 903 } 904 905 public class ParsingException extends java.io.IOException { 906 } 907 908 public class SignerInfo { 909 ctor public SignerInfo(); 910 method public java.util.ArrayList<java.security.cert.X509Certificate> getCertificateChain(sun.security.pkcs.PKCS7) throws java.io.IOException; 911 } 912 913} 914 915package sun.security.util { 916 917 public final class ObjectIdentifier implements java.io.Serializable { 918 ctor public ObjectIdentifier(String) throws java.io.IOException; 919 } 920 921} 922 923package sun.security.x509 { 924 925 public class AlgorithmId implements java.io.Serializable { 926 ctor public AlgorithmId(sun.security.util.ObjectIdentifier); 927 method public String getName(); 928 } 929 930} 931 932