| <html devsite> |
| <head> |
| <title>Android Interfaces and Architecture</title> |
| <meta name="project_path" value="/_project.yaml" /> |
| <meta name="book_path" value="/_book.yaml" /> |
| </head> |
| <body> |
| <!-- |
| Copyright 2017 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <p>Android gives you the freedom to implement your own device specifications and |
| drivers. The hardware abstraction layer (HAL) provides a standard method for |
| creating software hooks between the Android platform stack and your hardware. |
| The Android operating system is also open source, so you can contribute your own |
| interfaces and enhancements.</p> |
| |
| <p>Before porting Android to your hardware, take a moment to understand the |
| <a href="/devices/architecture/index.html">Android system architecture</a>. |
| Because your drivers and the HAL interact with Android, knowing its structure |
| can help you navigate the many layers of code in the Android Open Source Project |
| (AOSP) source tree. When you are comfortable with the basic Android |
| architecture, review the interface-specific documentation in this section to |
| learn about specific HALs and how to build them for your device.</p> |
| |
| <p>To maintain a high level of quality and offer a consistent user experience, |
| Android requires that all implementations meet the requirements stated in the |
| <a href="/compatibility/cdd.html">Compatibility Definition Document (CDD)</a> |
| and that all devices pass tests in the |
| <a href="/compatibility/cts.html">Compatibility Test Suite (CTS)</a>. For |
| details on the Android compatibility program, see |
| <a href="/compatibility/index.html">Compatibility</a>.</p> |
| |
| </body> |
| </html> |