The managed Dalvik bytecode execution environment is the primary vehicle for Android applications. The Android application programming interface (API) is the set of Android platform interfaces exposed to applications running in the managed runtime environment.
[C-0-1] MUST provide complete implementations, including all documented behaviors, of any documented API exposed by the Android SDK or any API decorated with the “@SystemApi” marker in the upstream Android source code.
[C-0-2] MUST support/preserve all classes, methods, and associated elements marked by the TestApi annotation (@TestApi).
[C-0-3] MUST NOT omit any managed APIs, alter API interfaces or signatures, deviate from the documented behavior, or include no-ops, except where specifically allowed by this Compatibility Definition.
[C-0-4] MUST still keep the APIs present and behave in a reasonable way, even when some hardware features for which Android includes APIs are omitted. See section 7 for specific requirements for this scenario.
[C-0-5] MUST restrict the use of 3rd-party app usage of hidden APIs, defined as APIs in the android namespace decorated with the
@hidden annotation but not with a
@TestApi, as described in the SDK documents and ship with each and every hidden API on the the same restricted lists as provided via the light-greylist, dark-greylist, and blacklist files in the
prebuilts/runtime/appcompat/ path for the appropriate API level branch in the AOSP. However they:
Android includes the support of extending the managed APIs while keeping the same API level version.
ExtServiceswith versions higher than or equal to the minimum versions allowed per each API level. For example, Android 7.0 device implementations, running API level 24 MUST include at least version 1.
Due to Apache HTTP client deprecation, device implementations:
org.apache.http.legacylibrary in the bootclasspath.
org.apache.http.legacylibrary to the application classpath only when the app satisfies one of the following conditions:
The AOSP implementation meets these requirements.