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