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