What Android is not?
A Java ME implementation — Android applications are written using the Java language, but they are not run within a Java ME (Mobile Edition) VM, and Java-compiled classes and executables will not run natively in Android.
Part of the Linux Phone Standards Forum (LiPS) or the Open Mobile Alliance (OMA) — Android runs on an open-source Linux kernel, but, while their goals are similar, Android’s complete software stack approach goes further than the focus of these standards-defining organizations.
Simply an application layer (such as UIQ or S60) — Although Android does include an application layer, “Android’’ also describes the entire software stack, encompassing the underlying operating system, the API libraries, and the applications themselves.
A mobile phone handset — Android includes a reference design for mobile handset manufacturers, but there is no single “Android phone.” Instead, Android has been designed to support many alternative hardware devices.
Google’s answer to the iPhone — The iPhone is a fully proprietary hardware and software platform released by a single company (Apple), whereas Android is an open-source software stack produced and supported by the Open Handset Alliance (OHA) and designed to operate on any compatible device.
All about Android
Android has expanded beyond a pure mobile phone platform to provide a development platform for an increasingly wide range of hardware, including tablets and televisions.
Put simply, Android is an ecosystem made up of a combination of three components:
- A free, open-source operating system for embedded devices
- An open-source development platform for creating applications
- Devices, particularly mobile phones, that run the Android operating system and the applications created for it.
Android is made up of several necessary and dependent parts, including the following:
- A Compatibility Definition Document (CDD) and Compatibility Test Suite (CTS) that describe the capabilities required for a device to support the software stack.
- A Linux operating system kernel that provides a low-level interface with the hardware, memory management, and process control, all optimized for mobile and embedded devices.
- Open source libraries for application development, including SQLite, WebKit, OpenGL, and a media manager.
- A run time used to execute and host Android applications, including the Dalvik Virtual Machine (VM) and the core libraries that provide Android-specific functionality. The run time is designed to be small and efficient for use on mobile devices.
- An application framework that agnostically exposes system services to the application layer, including the window manager and location manager, databases, telephony, and sensors.
- A user interface framework used to host and launch applications.
- A set of core pre-installed applications.
- Native Android Applications x 5
- A software development kit (SDK) used to create applications, including the related tools, plug-ins, and documentation.
Types of Android Applications
Most of the applications we create in Android will fall into one of the following categories:
Foreground Applications — The application which is only useful when appears on the screen and if it is suspended will not be visible like Game apps.
Background Application — these types of application only works at background of phone software. It does not show their visibility, most of its lifetime hidden like alarm clock.
Intermittent Applications — it works at both foreground and background. This type of application does most of their work in the background. Most well-designed applications fall into this category. A common example would be a media player.
Widgets and Live Wallpapers Apps — Some applications are represented only as a home-screen Widget or as a Live Wallpaper.
Following are the preinstalled applications in almost all the android devices which make it open source project:
- E-mail client
- SMS management application
- A full PIM (personal information management) suite, including a calendar and contacts list
- WebKit-based web browser
- music player and picture gallery
- camera and video recording application
- home screen
- alarm clock
Few devices also offers Google Mobile applications like:
- Google Play Store for downloading third-party Android applications
- Google Maps application, including StreetView, driving directions, and turn-by-turn navigation, satellite views, and traffic conditions
- Google Talk
Note: Some devices can have more than these apps.