Android is software for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides some tools and APIs which is necessary to developing applications on the Android platform using the Java programming language.
Features of Android application:
- Application framework enabling reuse and replacement of components.
- Dalvik Virtual Machines optimized for mobile devices.
- Integrated browser based on the open source Webkit engine.
- SQLite for structured data storage.
- GSM Telephony (hardware dependent).
- Bluetooth, EDGE, 3G, and Wi-Fi (hardware dependent).
- Camera, GPS, compass, and accelerometer (hardware dependent).
- Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE.
- Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the open GLES 1.0 specification (hardware acceleration optional).
- Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).
By providing open development platform, Android offers developers the ability to build extremely rich and innovative applications. Developers are free to take advantage of the device hardware, access local information, run background services, set alarms, add notifications to the status bar etc.
Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user.
Underlying all applications is a set of services and systems, including:
- A rich and extensible set of Views that can be used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser.
- Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data.
- A Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files.
- A Notification Manager that enables all applications to display custom alerts in the status bar.
- An Activity Manager that manages the lifecycle of applications and provides a common navigation backstack.
Android applications are written in Java programming language. The Android SDK tools compile the code along with any data and resource files into an Android Package, an archive file with an .apk suffix. All the code in a single .apk file is considered to be one application and is the file that Android-powered devices use to install the application.
Application components are the essential building blocks of an Android application. Each component is a different point through which the system can enter your application. Not all components are actual entry points for the user and some depend on each other, but each exists as its own entity and plays a specific role, each one is a unique building block that helps to define application’s overall behavior.
Here are the four types of application components:
- Activities- An activity represents a single screen with a user interface. For example, an email application might have one activity that shows a list of emails, another activity to compose an email, and another activity for reading emails. Although the activities work together to form a cohesive user experience in the email application, each one is independent of each other.
- Services- A service is a component that runs in the background to perform long-running operations or to perform work for remote processes. A service does not provide a user interface. For example, a service might play music in the background while the user is in a different application, or it might fetch data over the network without blocking user interaction with an activity.
- Content providers- A content provider manages a shared set of application data. You can store the data in the file system, a SQLite database, on the web, or any other persistent storage location your application can access. Through the content provider, other applications can query or even modify the data (if the content provider allows it). For example, the Android system provides a content provider that manages the user's contact information.
- Broadcast receivers- A broadcast receiver is a component that responds to system-wide broadcast announcements. Many broadcasts originate from the system. For example, a broadcast announcing that the screen has turned off, the battery is low, or a picture was captured. Applications can also initiate broadcasts. For example, to let other applications know that some data has been downloaded to the device and is available for them to use. Although broadcast receivers don't display a user interface, they may create a status bar notification to alert the user when a broadcast event occurs.
Software Requirements and Guidelines for Developing Android Application:
Now I am going to elaborate about software requirements for Android application and also given a guideline how to install it and build a platform for developing Android application in widows.
Perform the following steps to build the platform for developing Android application:
- Download and install jdk-7-windows-x64.exe
- Download and install android-sdk_r13-windows (http://developer.android.com/sdk/index.html)
- Download and install eclipse-java-indigo-SR1-win32-x86_64 (http://www.eclipse.org/downloads/)
- Configure ADT Plugin
- Start Eclipse, and then Select
Help à Install New Software....
- Click Add, in the top-right corner.
- In the Add Repository dialog that appears,
enter "ADT Plugin" for the Name and the following URL for the ocation: https://dlssl.google.com/android/eclipse/
- Click OK.
Note: If you have trouble acquiring the plugin, try using "http" in the Location URL,
instead of "https" (https is preferred for security reasons).
- In the Available Software dialog, select the checkbox next to Developer Tools and click Next.
- In the next window, you'll see a list of the tools to be downloaded. Click Next.
- Read and accept the license agreements, then click Finish.
- Note: If you get a security warning saying that the authenticity or validity of the software can't be established, click OK.
- When the installation completes, restart Eclipse
- After performing the above steps you can easily build an android application for mobile devices by using eclipse IDE.
Thanks for reading this article. I think this will help you a lot.