Skip to main content

Following the Android Developers's Guide definition, Android represents a software stack, that is a set of software subsystems needed to create a fully functional solutions, at the first place for mobile devices.

- Advertisement -
- Advertisement -

The Android stack includes an operation system (Android OS is modified version of the Linux kernel), middleware partly based on Java (software which purpose is to connect the low-level operating system to high-level applications) and key applications written in Java programming language (i.e. internet browser or contact manager)

Android has the following features:

  • Application framework enabling reuse and replacement of app components
  • Bluetooth, EDGE, 3G, and WiFi support (hardware dependent)
  • Camera, GPS, compass, and accelerometer support (hardware dependent)
  • Dalvik Virtual Machine (DVM) optimized for mobile devices
  • GSM Telephony support (hardware dependent)
  • Integrated browser based on the open source WebKit engine
  • Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
  • Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional)
  • SQLite for structured data storage

Android development environment (together with a device emulator and ADT - a plugin for the Eclipse IDE) are not parts of an Android device's software stack, but they could be considered as an Android feature.

- Advertisement -