Android is an open source and Linux-based Operating System for mobile devices such as smartphones and tablet computers.
Android application development on e operating systems −
second point is that all the required tools to develop Android applications are freely available and can be downloaded from the Web.
Android operating system is a stack of software components which is roughly divided into five sections and four main layers as shown below in the architecture diagram.
There are many more items which you use to build a good Android application. Apart from coding for the application, you take care of various other resources like static content that your code uses, such as bitmaps, colors, layout definitions, user interface strings, animation instructions, and more. These resources are always maintained separately in various sub-directories under res/ directory of the project.
A service is a component that runs in the background to perform long-running operations without needing to interact with the user and it works even if application is destroyed.
Broadcast Receivers simply respond to broadcast messages from other applications or from the system itself.
A Fragment is a piece of an activity which enable more modular activity design. It will not be wrong if we say, a fragment is a kind of sub-activity.
An Android Intent is an abstract description of an operation to be performed.You have seen how an Intent has been used to call an another activity. Android OS uses filters to pinpoint the set of Activities, Services, and Broadcast receivers that can handle the Intent with help of specified set of action, categories, data scheme associated with an Intent.
A Web API is an online “application programming interface” that allows developers to interact with external services.
SQLite is a opensource SQL database that stores data to a text file on a device. Android comes in with built in SQLite database implementation. SQLite supports all the relational database features.
Third-party libraries are widely used in Android applications to ease development and enhance functionalities
The layout is the structure that supports the visual components of an interfacein andriod.
Input controls are the interactive components in your app's user interface. Android provides a wide variety of controls you can use in your UI, such as buttons, text fields, seek bars, check box, zoom buttons, toggle buttons, and many more.
Events are a useful way to collect data about a user's interaction with interactive components of Applications.
A style resource defines the format and look for a UI. A style can be applied to an individual View (from within a layout file) or to an entire Activity or application (from within the manifest file).
Implementing own components in pre built-in components with extending subclass with own defined classImplementing own components in pre built-in components with extending subclass with own defined class.
Android drag/drop framework allows your users to move data from one View to another View in the current layout using a graphical drag and drop gesture.
A notification is a message you can display to the user outside of your application's normal UI.
Android location APIs make it easy for you to build location-aware applications, without needing to focus on the details of the underlying location technology.
Email is messages distributed by electronic means from one system user to one or more recipients via a network.
In Android, you can use SmsManager API or devices Built-in SMS application to send SMS's.
Android provides Built-in applications for phone calls, in some occasions we may need to make a phone call through our application. This could easily be done by using implicit Intent with appropriate actions. Also, we can use PhoneStateListener and TelephonyManager classes, in order to monitor the changes in some telephony states on the device.