page.title=Android Interfaces
@jd:body

<!--
    Copyright 2015 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.
-->
<div id="qv-wrapper">
  <div id="qv">
    <h2>In this document</h2>
    <ol id="auto-toc">
    </ol>
  </div>
</div>

<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>
To ensure devices maintain a high level of quality and offer a consistent user
experience, each device must pass tests in the compatibility test suite (CTS).
The CTS verifies devices meet a quality standard that ensures apps run reliably
and users have a good experience. For details on the CTS, see
<a href="{@docRoot}compatibility/index.html">Compatibility</a>.
</p>

<h2 id="Android system architecture">Android system architecture</h2>

<p>
Before porting Android to your hardware, take a moment to understand the Android
system architecture at a high level. Because your drivers and the HAL interact
with Android, knowing how Android works can help you navigate the many layers of
code in the Android Open Source Project (AOSP) source tree.
</p>

<img src="images/ape_fwk_all.png">

<p class="img-caption"><strong>Figure 1.</strong> Android System Architecture</p>

<h3 id="Application framework">Application framework</h3>
<p>
The application framework is used most often by application developers. As a
hardware developer, you should be aware of developer APIs as many map directly
to the underlying HAL interfaces and can provide helpful information about
implementing drivers.
</p>

<h3 id="Binder IPC">Binder IPC</h3>
<p>
The Binder Inter-Process Communication (IPC) mechanism allows the application
framework to cross process boundaries and call into the Android system services
code. This enables high level framework APIs to interact with Android system
services. At the application framework level, this communication is hidden from
the developer and things appear to "just work."
</p>

<h3 id="System services">System services</h3>
<p>
Functionality exposed by application framework APIs communicates with system
services to access the underlying hardware. Services are modular, focused
components such as Window Manager, Search Service, or Notification Manager.
Android includes two groups of services: <em>system</em> (services such as
Window Manager and Notification Manager) and <em>media</em> (services involved
in playing and recording media).
</p>

<h3 id="Hardware Abstraction Layer">Hardware abstraction layer (HAL)</h3>
<p>
The HAL is a standard interface that allows the Android system to call into the
device driver layer while being agnostic about the lower-level implementations
of drivers and hardware.
</p>

<img src="images/ape_fwk_hal.png">

<p class="img-caption"><strong>Figure 2.</strong> Hardware abstraction layer
(HAL) components</p>

<p>
You must implement the corresponding HAL (and driver) for the specific hardware
your product provides. HAL implementations are typically built into shared
library modules (<code>.so</code> files). Android does not mandate a standard
interaction between your HAL implementation and your device drivers, so you have
free reign to do what is best for your situation. However, to enable the Android
system to correctly interact with your hardware, you <strong>must</strong> abide
by the contract defined in each hardware-specific HAL interface.
</p>

<h3 id="Linux kernel">Linux Kernel</h3>
<p>
Developing your device drivers is similar to developing a typical Linux device
driver. Android uses a version of the Linux kernel with a few special additions
such as wake locks (a memory management system that is more agressive in
preserving memory), the Binder IPC driver, and other features important for a
mobile embedded platform. These additions are primarily for system functionality
and do not affect driver development.

<p>
You can use any version of the kernel as long as it supports the required
features (such as the binder driver). However, we recommend using the latest
version of the Android kernel. For details on the latest Android kernel, see <a href="{@docRoot}source/building-kernels.html" >Building Kernels</a>.
</p>