The mobile platform is an operating system for mobile devices. Some of the mobile devices operating systems are iOS, Bada, Android, Windows, and Blackberry, etc.
What is Andriod?
Android is a software pile for mobile devices which includes an operating system, middleware components, and other key applications. The Android SDK facilitates the APIs and tools needed to start developing applications on the Android platform. Developing applications in Android the programming language used is Java programming language.
These are some of the Android components which are the major means by which Android application runs successfully without any interruptions.
Android activity is represented by each individual screen within an Android application. The user can interact with activity by performing some actions which involve visual components. Example of an activity can be considered as a single webpage in a website. Each activity performs its operations independently of one another and all the activities in the application are an extension from the activity class.
Service is another component in Android application which performs its actions in the background to accomplish actions which take a long time to run or remote processes tasks. Service is a component which does not possess a user interface. Consider an example where service can play music in the background when the user is performing some operation in other application like checking an email or texting a message using SMS application or retrieve some information from the network without interrupting user’s actions within an activity.
The intent is an application which initiates the message passing between the activities. Using intents messages can be broadcast throughout the system or if it can also pass messages to a target activity or service, which states intended action requested by the user or activity. Specifying an Intent-filter allows a user to state how a particular activity in an application should be called.
A content provider is a component which maintains a collective group of application data. All the application information or data can be stored in an SQLite database or file system, on remote web servers or on any storage location where the application can access the data. Using the content provider, other applications can process its queries and other related activities. This component mostly behaves like a database where users are given flexibility to edit its contents, query information needed, delete some data when not needed. The only difference between database and content provider is that using content provider users can store its data in different ways.
This component responds to system-wide broadcast declarations. Any application which needs to receive or respond to global activities like SMS application, receiving an incoming call, it should have been registered as a broadcast receiver. Most of the broadcasts come from the system for example, we can consider a broadcast statement like when battery is low it shows red colored battery symbol in the phone, when screen lock button is pressed the display will be turned off, when SMS is received its shows a message symbol at the top of the notification bar. Broadcast receivers don’t possess user interface for broadcasting notifications instead they alert the users by showing the status of the application in the notification bar.
All the Android packages by default come with a bunch of core applications which includes an SMS application, Email application, calendar, maps, browser, contacts, GPS and others. All these applications are developed using the Java programming language.
The Android SDK is Software Development Kit which allows developers to develop mobile applications in Android platform. Generally, these tools are categorized into two groups, they are SDK tools and platform tools. Among these SDK tools are independent of the platform and these are mandatory for any mobile application which is developed in the Android platform. The second most common tools are Platform tools which are modified or personalized to provide support to the latest Android platform features.
Android application Features
Android offers several applications features out of which the following mentioned features are the most effective and useful characteristics of Android applications:
- The Dalvik Virtual Machine has been upgraded to improve developing mobile devices applications framework enabling reuse and replacement of components.
- GSM the Global System for mobile communications kind of telephony has been introduced.
- A productive application framework has been developed which enables the application components to be reused and replaced.
- Open source web kit has been integrated into the browser.
- Custom 2D and 3D graphics libraries came to the market which is based on Open GL specification.
- Structured data storage is supported by using the SQLite database.
- All the audio, video and image formats are supported in the new Android versions like MPEG, MP3, JPG, GIF, PNG, and ING.
- Hardware supportive environment like Wifi, 3G, 4G, EDGE connectivity and Bluetooth are improved in the Android platform.
- Development environment has been made popular by introducing device emulator feature Camera, GPS, compass, and accelerometer (hardware dependent).
- All other important features include an accelerometer, camera, GPS, several different tools which help in debugging the application, memory management, and performance monitoring.
Setting Up the Android Environment
Android Development environment can be set in any machine using Eclipse IDE. To develop an Android application the following tools must be installed in Eclipse.