Android defines a user space C abstraction interface for sensor hardware. The interface header is defined in hardware/libhardware/include/hardware/sensors.h
.In order to integrate sensors with Android you need to build a shared library that implements this interface. The types of sensors currently supported by Android include:
- Accelerometer
- Magnetic Field
- Orientation
- Gyroscope
- Light
- Pressure
- Temperature
- Proximity
Building a Sensor Library
To implement a Sensors driver, create a shared library that implements the interface defined in sensors.h
. You must name your shared library libsensors.so
so that it will get loaded from /system/lib
at runtime.
The following stub file, Android.mk
, ensures that libsensors
compiles and links to the appropriate libraries:
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := sensors LOCAL_PRELINK_MODULE := false LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw LOCAL_SHARED_LIBRARIES := liblog # include any shared library dependencies LOCAL_SRC_FILES := sensors.c include $(BUILD_SHARED_LIBRARY)
Interface
Note: This document relies on some Doxygen-generated content that appears in an iFrame below. To return to the Doxygen default content for this page, click here.
sensors.h File Reference
Go to the source code of this file.