upload android base code part4

This commit is contained in:
August 2018-08-08 17:00:29 +08:00
parent b9e30e05b1
commit 78ea2404cd
23455 changed files with 5250148 additions and 0 deletions

View file

@ -0,0 +1,43 @@
# 1\. Introduction
This document enumerates the requirements that must be met in order for devices
to be compatible with Android ANDROID_VERSION.
The use of “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”,
“SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” is per the IETF standard
defined in [RFC2119](http://www.ietf.org/rfc/rfc2119.txt).
As used in this document, a “device implementer” or “implementer” is a person
or organization developing a hardware/software solution running Android
ANDROID_VERSION. A “device implementation” or “implementation is the
hardware/software solution so developed.
To be considered compatible with Android ANDROID_VERSION, device
implementations MUST meet the requirements presented in this Compatibility
Definition, including any documents incorporated via reference.
Where this definition or the software tests described in [section
10](#10_software_compatibility_testing) is silent, ambiguous, or incomplete, it
is the responsibility of the device implementer to ensure compatibility with
existing implementations.
For this reason, the [Android Open Source Project](http://source.android.com/)
is both the reference and preferred implementation of Android. Device
implementers are STRONGLY RECOMMENDED to base their implementations to the
greatest extent possible on the “upstream” source code available from the
Android Open Source Project. While some components can hypothetically be
replaced with alternate implementations, it is STRONGLY RECOMMENDED to not
follow this practice, as passing the software tests will become substantially
more difficult. It is the implementers responsibility to ensure full
behavioral compatibility with the standard Android implementation, including
and beyond the Compatibility Test Suite. Finally, note that certain component
substitutions and modifications are explicitly forbidden by this document.
Many of the resources linked to in this document are derived directly or
indirectly from the Android SDK and will be functionally identical to the
information in that SDKs documentation. In any cases where this Compatibility
Definition or the Compatibility Test Suite disagrees with the SDK
documentation, the SDK documentation is considered authoritative. Any technical
details provided in the linked resources throughout this document are
considered by inclusion to be part of this Compatibility Definition.

View file

@ -0,0 +1,36 @@
## 1.1 Document Structure
### 1.1.1\. Requirements by Device Type
[Section 2](#2_device_types) contains all the MUST and STRONGLY RECOMMENDED
requirements that apply to a specific device type. Each subsection of
[Section 2](#2_device_types) is dedicated to a specific device type.
All the other requirements, that universally apply to any Android device
implementations, are listed in the sections after [Section 2](#2_device_types).
These requirements are referenced as "Core Requirements" in this document.
### 1.1.2\. Requirement ID
Requirement ID is assigned for MUST requirements.
* The ID is assigned for MUST requirements only.
* STRONGLY RECOMMENDED requirements are marked as [SR] but ID is not assigned.
* The ID consists of : Device Type ID - Condition ID - Requirement ID
(e.g. C-0-1).
Each ID is defined as below:
* Device Type ID (see more on [2. Device Types](#2_device_types)
* C: Core (Requirements that are applied to any Android device implementations)
* H: Android Handheld device
* T: Android Television device
* A: Android Automotive implementation
* Condition ID
* When the requirement is unconditional, this ID is set as 0.
* When the requirement is conditional, 1 is assinged for the 1st
condition and the number increments by 1 within the same section and
the same device type.
* Requirement ID
* This ID starts from 1 and increments by 1 within the same section and
the same condition.