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