Introduction to Android App Development
In this article, I am going to give a brief introduction to Android App Development. At the end of this article, you will understand the following pointers in detail.
- What is Android?
- Why Android?
- Features of Android
- Android Applications
- Categories of Android applications
- History of Android
- What is API Level?
What is Android?
Android is an open-source and Linux-based Operating System for mobile devices such as smartphones and tablet computers. Android was developed by the Open Handset Alliance, led by Google, and other companies. Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android.
The first beta version of the Android Software Development Kit (SDK) was released by Google in 2007 whereas the first commercial version, Android 1.0, was released in September 2008.
On June 27, 2012, at the Google I/O conference, Google announced the next Android version, 4.1 Jelly Bean. Jelly Bean is an incremental update, with the primary aim of improving the user interface, both in terms of functionality and performance.
The source code for Android is available under free and open-source software licenses. Google publishes most of the code under the Apache License version 2.0 and the rest, Linux kernel changes, under the GNU General Public License version 2.
Features of Android
Android is a powerful operating system competing with Apple 4GS and supports great features. A few of them are listed below:
- Beautiful UI: Android OS basic screen provides a beautiful and intuitive user interface.
- Connectivity: GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC, and WiMAX.
- Storage: SQLite, a lightweight relational database, is used for data storage purposes.
- Media support: H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP.
- Messaging: SMS and MMS
- Multi-touch: Android has native support for multi-touch which was initially made available in handsets such as the HTC Hero.
- Multi-tasking: The user can jump from one task to another and same time various applications can run simultaneously.
- Resizable widgets: Widgets are resizable, so users can expand them to show more content or shrink them to save space.
- Multi-Language: Supports single direction and bi-directional text.
- GCM: Google Cloud Messaging (GCM) is a service that lets developers send short message data to their users on Android devices, without needing a proprietary sync solution.
- Wi-Fi Direct: A technology that lets apps discover and pair directly, over a high-bandwidth peer-to-peer connection.
- Android Beam: A popular NFC-based technology that lets users instantly share, just by touching two NFC-enabled phones together.
Android applications are usually developed in the Java language using the Android Software Development Kit. Once developed, Android applications can be packaged easily and sold out either through a store such as Google Play, SlideME, Opera Mobile Store, Mobango, F-droid, and the Amazon Appstore.
Android powers hundreds of millions of mobile devices in more than 190 countries around the world. It’s the largest installed base of any mobile platform and growing fast. Every day more than 1 million new Android devices are activated worldwide.
This tutorial has been written with the aim to teach you how to develop and package Android applications. We will start from environment setup for Android application programming and then drill down to look into various aspects of Android applications.
Categories of Android applications
There are many android applications in the market. The top categories are –
History of Android
The code names of android range from A to N currently, such as Aestro, Blender, Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwich, Jelly Bean, KitKat, Lollipop, and Marshmallow. Let’s understand the android history in a sequence.
What is API Level?
API Level is an integer value that uniquely identifies the framework API revision offered by a version of the Android platform.
|Platform Version||API Level||VERSION_CODE|
|Android 4.4W||20||KITKAT_WATCH||KitKat for Wearables Only|
|Android 4.2, 4.2.2||17||JELLY_BEAN_MR1|
|Android 4.1, 4.1.1||16||JELLY_BEAN|
|Android 4.0.3, 4.0.4||15||ICE_CREAM_SANDWICH_MR1|
|Android 4.0, 4.0.1, 4.0.2||14||ICE_CREAM_SANDWICH|
In the next article, I am going to discuss Android Runtime and Dalvik. In this article, I try to give a brief introduction to Android App Development and I hope you enjoy this Introduction to Android Technology article.