Introduction to Android
Android is a Linux-based mobile operating system which was developed by Google. It was aimed to be designed primarily for touchscreen devices such as smartphones and tablets. The initial version of Android was released on September 23, 2008, while the latest release was on August 6, 2018, while I write this introduction to android post. It is called Android “9 Pie”.
Image Source: https://www.elprocus.com/
Main Components of Android
Image Source: https://www.google.co.in/imgres
The main components of any android application are the following:
- Content Providers
- Intent and broadcast receivers
- Widgets and Notifications
We can call the Activity as the presentation layer of an Android application. Simply put, an Activity represents the screen on your Android application which has its user interface. An application, for instance, an Email App can have many activities such as opening an email, composing an email, replying to an email – these all are different activities. So every Android application has more than one activity. When we start a new activity (like replying to an email), previous activity is pushed to the back stack and it gets stopped until the new activity is finished, however, if we push back button while ongoing activity, the current activity gets dissolved and is popped out of the stack and previous activity resumes.
The other important component of an Android application is the service. It performs running operations (long or short) in the background for the activity that you perform on your screen. For example, a push notification from an email. It is possible that service still runs while you have terminated the application or you are not using it currently. For example, when you get an email, you get the notification while still, you are not using the application currently.
3. Content Providers
Content Providers manage the application Data and encapsulate it (Object Oriented Feature). This provides the data from one processor of an application to another one. The data might be stored in Database or in a file system or any other storage management systems. Android devices include several native Content Providers that expose useful databases such as the media store and contacts.
4. Intent and Broadcast Receivers
Android Intents are the means of communication that acts as a facilitator when the exchange of message occurs between different components within the same application or from one application to another. In order to start any service, we have to pass an intent to perform this task. Intents are of two types:
Image Source: https://bit.ly/2XKfzRX
- Implicit Intents: It does not declare the name of the service to start but declares the action to perform.
- Explicit Intents: It specifies the exact activity to which intent should be given.
Broadcast Receivers enable your application to listen for intents that match the criteria you specify. As an example, applications can start the broadcasts to let other applications know that few data has been downloaded to the device and is available for them to use. There are two types of broadcast:
- Normal Broadcast: They are completely asynchronous and all receivers of the broadcast are run in an undefined order.
- Ordered Broadcast: They are synchronous and are delivered to one receiver one at a time.
Image Source: https://www.google.co.in/imgres
5. Widgets and Notifications
Widgets display your app interesting or new content in the consolidated form on a mobile or tablet home screen. The user can do different activities like moving and resizing of widgets. There are basically four types of widgets:
- Information Widget – This widget displays only the important information to the users. For e.g. the clock on the home screen.
- Collection Widget – This widget displays multiple information of the same type and allows you to select any of them to open. For example, when you open an email application, you see multiple emails.
- Control Widget – This widget displays frequently used functions. For example, the music app widget allows the user to play, music from outside of an application.
- Hybrid Widget – This widget combines the information from above all three widgets.
Notifications allow informing users of any events that have occurred. For e.g., we use what’s app application, as and when a message comes, we get a notification.
Characteristics of Android
As we have already learned about the introduction to Android, Let’s see the characteristics of Android:
- Android can run multiple applications at the same time.
- Android widgets let you display just about any feature you choose right on the home screen.
- Android supports multiple keyboards and it is super easy to install them.
- Android supports Video Graphics Array, 2D, and 3D graphics alongside.
- Android also supports Java applications.
- One can change settings quite faster when Android is running on the phone
- The very good app market
- Most Android devices support NFC, which allows electronic devices to easily interact across short distances.
Applications of Android
In the above section, we have seen the basic introduction to Android. Now we are going ahead with the application of Android:
Android applications are software applications which are running on Android platform. We have already seen the components of the android application previously as composed of one or more application components like activities, services, content providers, and broadcast receivers. Android apps are written in the Java programming language and use Java core libraries. For Android app development, developers may download the Software Development Kit (SDK) from the android website. The SDK includes tools, sample code and relevant documents for creating Android apps.
Advantages And Disadvantages of Android
Below are the advantages and disadvantages of android which are as follows:
Advantages of Android
- Android is owned by Google, one of the most trusted and reputed organizations across the globe it is also an open source and it is completely free.
- It works on almost all devices and is flexible.
- There are widgets which enable to have a quick do to your work.
- We can run multiple tasks at the same time which hence enables multitasking.
- There is a giant application hub, called Google play store, where you can find millions of apps on the Google Play store. It has way more applications than any other OS platforms.
- They have multiple features as compared to other operating systems.
- Android is more customizable.
Disadvantages of Android
- Android advertisements most frequently occur on popular free android applications which are kind of annoying to users.
- Android OS is considered as one of the most battery consuming operating systems. In the Android operating system, there is plenty of process running in the background which results in the quick draining of the battery.
- Often Android applications come with low on security.
- If mobile RAM is less, and if the user opens up a few application, then it hangs.
- It usually needs more code for development.
- An application that contains the virus is also present in the Android Market.
This has been a guide on Introduction to Android. Here we have discussed the main components, applications, characteristics, along with advantages and disadvantages of Android. You may also look at the following article to learn more –
- Android Developer and Web Developer
- Android Interview Questions
- Careers in Android Development
- Android Ad Blocker Apps