While both Android and iOS Apps skills are in high demand, employers are hiring Android developers much faster and more often than other mobile tech professionals. The number of smartphone users is expected to grow around 2.5 billion in 2020, according to oyecode.com. The same report declares that Android, with 82 percent of all smartphone sales, leads to the global smartphone market. The demand for Android App developers is on a meteoric rise, and the moment is right to break into a career in Android Apps Development. To help you get started, we have compiled a list of Android interview questions and answers to help you face Android interview jobs that come your way. In case you have attended an Android Job interview questions yourself or have any questions that you want us to answers for you, do feel free.
|Android Name||Version||Year of Release|
|Android 1.5||Android Cupcake||2009|
|2.2 - 2.2.3||Froyo||2010|
|2.3 - 2.3.7||Gingerbread||2010|
|3.0 - 3.2.6||Honeycomb||2011|
|4.0 - 4.0.4||Ice Cream Sandwich||2011|
|4.1 - 4.3.1||Jelly Bean||2012|
|4.4 - 4.4.4||KitKat||2013|
|5.0 - 5.1.1||Lollipop||2014|
|6.0 - 6.0.1||Marshmallow||2015|
|7.0 - 7.1.2||Nougat||2016|
|8.0 - 8.1||Oreo||2017|
It is an open-sourced operating system that is used primarily on mobile devices, such as cell phones and tablets. It is a Linux kernel-based system that's been equipped with rich components that allows developers to create and run apps that can perform both basic and advanced functions.
The Google Android SDK is a toolset that developers need in order to write apps on Android enabled devices. It contains a graphical interface that emulates an Android driven handheld environment, allowing them to test and debug their codes.
What is the Android Architecture?
Android Architecture is made up of 4 key components: Linux Kernel Libraries Android Framework Android Applications
The Android Framework is an important aspect of the Android Architecture. Here you can find all the classes and methods that developers would need in order to write applications on the Android environment.
AAPT is short for Android Asset Packaging Tool. This tool provides developers with the ability to deal with zip-compatible archives, which includes creating, extracting as well as viewing its contents.
The emulator lets developers "play" around an interface that acts as if it were an actual mobile device. They can write and test codes, and even debug. Emulators are a safe place for testing codes especially if it is in the early design phase.
An activityCreator is the first step towards the creation of a new Android project. It is made up of a shell script that will be used to create new file system structure necessary for writing codes within the Android IDE.
Activities are what you refer to as the window to a user interface. Just as you create windows in order to display output or to ask for an input in the form of dialog boxes, activities play the same role, though it may not always be in the form of a user interface.
Intents displays notification messages to the user from within the Android enabled device. It can be used to alert the user of a particular state that occurred. Users can be made to respond to intents.
Activities can be closed, or terminated anytime the user wishes. On the other hand, services are designed to run behind the scenes, and can act independently. Most services run continuously, regardless of whether there are certain or no activities being executed.
These are the essential items that are present each time an Android project is created: AndroidManifest.xml build.xml bin/ src/ res/ assets/
The use of XML-based layouts provides a consistent and somewhat standard means of setting GUI definition format. In common practice, layout details are placed in XML files while other items are placed in source files.
Containers, as the name itself implies, holds objects and widgets together, depending on which specific items are needed and in what particular arrangement that is wanted. Containers may hold labels, fields, buttons, or even child containers, as examples.
Orientation, which can be set using setOrientation(), dictates if the LinearLayout is represented as a row or as a column. Values are set as either HORIZONTAL or VERTICAL.
Developers can write and register apps that will specifically run under the Android environment. This means that every mobile device that is Android enabled will be able to support and run these apps. With the growing popularity of Android mobile devices, developers can take advantage of this trend by creating and uploading their apps on the Android Market for distribution to anyone who wants to download it.
Given that Android is an open-source platform, and the fact that different Android operating systems have been released on different mobile devices, there's no clear cut policy to how applications can adapt with various OS versions and upgrades. One app that runs on this particular version of Android OS may or may not run on another version. Another disadvantage is that since mobile devices such as phones and tabs come in different sizes and forms, it poses a challenge for developers to create apps that can adjust correctly to the right screen size and other varying features and specs.
Adb is short for Android Debug Bridge. It allows developers the power to execute remote shell commands. Its basic function is to allow and control communication towards and from the emulator port.
Active – if the activity is at the foreground Paused – if the activity is at the background and still visible Stopped – if the activity is not visible and therefore is hidden or obscured by another activity Destroyed – when the activity process is killed or completed terminated
ANR is short for Application Not Responding. This is actually a dialog that appears to the user whenever an application have been unresponsive for a long period of time.
Among the different elements, the and elements must be present and can occur only once. The rest are optional, and can occur as many times as needed.
Escape characters are preceded by double backslashes. For example, a newline character is created using '\\n'
Permissions allow certain restrictions to be imposed primarily to protect data and code. Without these, codes could be compromised, resulting to defects in functionality.
Because every component needs to indicate which intents they can respond to, intent filters are used to filter out intents that these components are willing to receive. One or more intent filters are possible, depending on the services and activities that is going to make use of it.
Entire lifetime – activity happens between onCreate and onDestroy Visible lifetime – activity happens between onStart and onStop Foreground lifetime – activity happens between onResume and onPause
A call to onStop method happens when an activity is no longer visible to the user, either because another activity has taken over or if in front of that activity.
Yes, there are actually instances wherein some qualifiers can take precedence over locale. There are two known exceptions, which are the MCC (mobile country code) and MNC (mobile network code) qualifiers.
There are 4 possible states: foreground activity visible activity background activity empty process
One technique that prevents the Android system from concluding a code that has been responsive for a long period of time is to create a child thread. Within the child thread, most of the actual workings of the codes can be placed, so that the main thread runs with minimal periods of unresponsive times.
Dalvik serves as a virtual machine, and it is where every Android application runs. Through Dalvik, a device is able to execute multiple virtual machines efficiently through better memory management.
This file is essential in every application. It is declared in the root directory and contains information about the application that the Android system must know before the codes can be executed.
The following are steps to be followed prior to actual application development in an Android-powered device: -Declare your application as "debuggable" in your Android Manifest. -Turn on "USB Debugging" on your device. -Set up your system to detect your device.
1. create the .aidl file, which defines the programming interface 2. implement the interface, which involves extending the inner abstract Stub class as well as implanting its methods. 3. expose the interface, which involves implementing the service to the clients.
When default resources, which contain default strings and files, are not present, an error will occur and the app will not run. Resources are placed in specially named subdirectories under the project res/ directory.
Assuming that all of these multiple resources are able to match the configuration of a device, the 'locale' qualifier almost always takes the highest precedence over the others.
The ANR dialog is displayed to the user based on two possible conditions. One is when there is no response to an input event within 5 seconds, and the other is when a broadcast receiver is not done executing within 10 seconds.
AIDL, or Android Interface Definition Language, handles the interface requirements between a client and a service so both can communicate at the same level through interprocess communication or IPC. This process involves breaking down objects into primitives that Android can understand. This part is required simply because a process cannot access the memory of the other process.
AIDL has support for the following data types: -string -charSequence -List -Map -all native Java data types like int,long, char and Boolean
A fragment is a part or portion of an activity. It is modular in a sense that you can move around or combine with other fragments in a single activity. Fragments are also reusable.
A visible activity is one that sits behind a foreground dialog. It is actually visible to the user, but not necessarily being in the foreground itself.
The foreground activity, being the most important among the other states, is only killed or terminated as a last resort, especially if it is already consuming too much memory. When a memory paging state has been reach by a foreground activity, then it is killed so that the user interface can retain its responsiveness to the user.
Yes, it is possible to do that, such as when you want to create a background behaviour for a particular activity. You can do this by using add(Fragment,string) method to add a fragment from the activity.
To remove an icon or shortcut, press and hold that icon. You then drag it downwards to the lower part of the screen where a remove button appears.
There are 5 key components under the Android application architecture: - services - intent - resource externalization - notifications - content providers
A project under Android development, upon compilation, becomes an .apk file. This apk file format is actually made up of the AndroidManifest.xml file, application code, resource files, and other related files.
A Sticky Intent is a broadcast from sendStickyBroadcast() method such that the intent floats around even after the broadcast, allowing others to collect data from it.
Some Android-powered phone allows you to upgrade to the higher Android operating system version. However, not all upgrades would allow you to get the latest version. It depends largely on the capability and specs of the phone, whether it can support the newer features available under the latest Android version.
Portable Wi-Fi Hotspot allows you to share your mobile internet connection to other wireless device. For example, using your Android-powered phone as a Wi-Fi Hotspot, you can use your laptop to connect to the Internet using that access point.
In Android development, an action is what the intent sender wants to do or expected to get as a response. Most application functionality is based on the intended action.
In general, a Nine-patch image allows resizing that can be used as background or other image size requirements for the target device. The Nine-patch refers to the way you can resize the image: 4 corners that are unscaled, 4 edges that are scaled in 1 axis, and the middle one that can be scaled into both axes.
The main language supported is Java programming language. Java is the most popular language for app development, which makes it ideal even for new Android developers to quickly learn to create and deploy applications in the Android environment.
Android Interview Questions, Android Interview Question, Android Developer Interview Questions, Android Interview Question And Answer, Android Interview Questions For Freshers