Android Interview Questions and Answers

Q.1.What is Android?
A.Android is an open source operating system and is mainly popular for Smartphones and Tablets.
This operating system is Linux Kernel based. Using Android operating system, the developer develops the functions or programs which can perform basic as well as the advanced type of operations on the Smartphone.
Q.2. What is Android SDK?
A.To develop a mobile application, Android developers require some tools and this requirement is satisfied by “Android SDK” which is a set of tools that are used for developing or writing apps. It has a Graphical User Interface which emulates the Android environment. This emulator acts as an actual mobile device on which the developers write their code and then debug/test the same code to check if anything is wrong.
Q.3. What is the difference between Mobile Application Testing and Mobile Testing?
A.Mobile app testing is the testing of applications on a device which mainly focuses on functions and features of the application.
And Mobile Testing is the testing of the actual mobile device and focuses on the mobile features like Call, SMS, Contacts, Media Player, inbuilt browsers etc.
Q.4.Name the languages supported for Android development.
A.Java is the widely used language for Android development.It also supports C/C++ and when used with Android SDK, it improves the performance speed too.
Q.5.Define and explain Android Framework.
A.Android framework is a set of API’s using which the Android developers write code for the mobile apps. It contains the methods and classes to write the programming code.
Android framework includes a different set of tools to create image pane, text field, buttons, etc. It also includes “Activities” with which the user interacts and “Services”, which are the programs that run in the background. It is a package of different components like Intents, Broadcast Receivers, Content Providers, etc.
Q.6.Which components are necessary for a New Android project?
A. Whenever a new Android project is created, the below components are required:

  • manifest: It contains xml file.
  • build/: It contains build output.
  • src/: It contains the code and resource files.
  • res/: It contains bitmap images, UI Strings and XML Layout i.e. all non-code resources.
  • assets/: It contains a file which should be compiled into a .apk file.
Q.7.What is meant by Services?
A. Service is an Android component which runs in the background and acts independently. It does not provide any user interface. Though the services are running behind the scene, a user can continue their work on different apps. Most of the time, the users are not aware of the services which are running in the background. These services allow the system to kill the process without interrupting the user’s ongoing work.
A service is implemented as a subclass of Service class:Public class MainService extends Service
Q.8.Explain Activity Lifecycle briefly.
A. When a user interacts with the app and moves here and there, out of the app, returns to the app, etc. During all this process “Activity” instances also move in the different stages in their lifecycle.
There are seven different states like – onCreate(), onStart(), onRestart(), onResume(), onPause(), onStop(), and onDestroy(). These are termed as a ‘callback’. Android system invokes these callbacks to know that the state has been changed.
Q.9.What is the importance of setting up permission in app development?
A. Once the permissions are set for the app development, then the data and code are restricted to the authorized users only.If the code is kept without any restriction or if it is accessible to anyone then there are chances of compromise of code which results in defect leakage.
Q.10.What is ANR in Android?
A. ANR stands for Application Not Responding. It is a notification or pop-up displayed by the Android platform whenever the application is performing too many functions at a time and if it is suddenly not responding for a long time to the user action.
Q.11.What is ADB?
A. Android Debug Bridge (ADB) is a command line tool which performs shell commands.
ADB is used for direct communication between the emulator ports. It gives the direct control of the communication between the emulator instances to the developer.
Q.12.What is ActivityCreator?
A. ActivityCreator is a batch file and shell script which was used to create a new Android project. It is now replaced by “Create New Project” in Android SDK.
Q.13.What is Orientation?
A. Orientation is the key feature in Smartphones nowadays. It has the ability to rotate the screen between Horizontal or Vertical mode.
Android supports two types of screen Orientations as mentioned below:
Portrait: When your device is vertically aligned.
Landscape: When your device is horizontally aligned.
setOrientation() is a method using which you can set a screen alignments. HORIZONTAL and VERTICAL are two values which can be set in the setOrientation() method. Whenever there is a change in the display orientation i.e. from Horizontal to Vertical or vice versa then onCreate() method of the Activity gets fired.
Basically, when the orientation of the Android mobile device gets changed then the current activity gets destroyed and then the same activity is recreated in the new display orientation. Android developers define the orientation in the AndroidManifest.xml file.
Q.14. What is AIDL?
A. In the Android platform, there are remote methods which facilitate the use of methods from one program to another. To create and implement the remote methods the first step is to define communication interface in AIDL.
AIDL stands for Android Interface Definition Language. It facilitates the communication between the client and service. It also communicates the information through inter-process communication.
For communication between processes, the data is broken down into chunks which are easily understandable by the Android platform.
Q.15. Which tools are used for debugging on the Android platform?
A. To understand the cause of the failure or cause of any issue, debugging is important. On the Android platform Android Monitor.bat utility is used while on iOS platform, iPhone Configuration utility is used for debugging purposes.
There are different tools for debugging which include – Android DDMS, Android Debug Bridge, iOS simulator, Debugging from Eclipse with ADT, Remote debugging on Android with Chrome etc.
Q.16. Who is the founder of Android?
A. Andy Rubin.
Q.17. Explain the Android application Architecture.
A. Following is a list of components of Android application architecture:

  • Services: Used to perform background functionalities.
  • Intent: Used to perform the interconnection between activities and the data passing mechanism.
  • Resource Externalization: strings and graphics.
  • Notification: light, sound, icon, notification, dialog box and toast.
  • Content Providers: It will share the data between applications.
Q.18. What are the advantages of Android?
A. Open-source: It means no license, distribution and development fee.Platform-independent: It supports Windows, Mac, and Linux platforms.Supports various technologies: It supports camera, Bluetooth, wifi, speech, EDGE etc. technologies.

Highly optimized Virtual Machine: Android uses a highly optimized virtual machine for mobile devices, called DVM (Dalvik Virtual Machine).

Q.19. What are the core building blocks of android?
A. The core building blocks of Android are:

  • Activity
  • View
  • Intent
  • Service
  • Content Provider
  • Fragment etc.
Q.20. What are the life cycle methods of android activity?
A. There are 7 life-cycle methods of activity. They are as follows:

  1. onCreate()
  2. onStart()
  3. onResume()
  4. onPause()
  5. onStop()
  6. onRestart()
  7. onDestroy()
Q.21. What is intent?
A. It is a kind of message or information that is passed to the components. It is used to launch an activity, display a web page, send SMS, send email, etc. There are two types of intents in android:

  1. Implicit Intent
  2. Explicit Intent
Q.22. How are view elements identified in the android program?
A. View elements can be identified using the keyword findViewById.
Q.23. Define Android toast.
A. An android toast provides feedback to the users about the operation being performed by them. It displays the message regarding the status of operation initiated by the user.
Q.24. Give a list of impotent folders in android
A. The following folders are declared as impotent in android:

  • AndroidManifest.xml
  • build.xml
  • bin/
  • src/
  • res/
  • assets/
Q.25. Explain the use of ‘bundle’ in android?
A. We use bundles to pass the required data to various subfolders.
Q.26. What is an application resource file?
A. The files which can be injected for the building up of a process are called as application resource file.
Q.27. What is the use of LINUX ID in android?
A. A unique Linux ID is assigned to each application in android. It is used for the tracking of a process.
Q.28. Can the bytecode be written in java be run on android?
A. No
Q.29. List the various storages that are provided by Android.
A. The various storage provided by android are:

  • Shared Preferences
  • Internal Storage
  • External Storage
  • SQLite Databases
  • Network Connection
Q.30. How are layouts placed in Android?
A. Layouts in Android are placed as XML files.
Q.31. What is the implicit intent in android?
A. The Implicit intent is used to invoke the system components.
Q.32. What is explicit intent in android?
A. An explicit intent is used to invoke the activity class.
Q.33. What is the name of the database used in android?
A. SQLite:An opensource and lightweight relational database for mobile devices.
Q.34. What is AAPT?
A. AAPT is an acronym for android asset packaging tool. It handles the packaging process.
Q.35. What is fragment?
A. The fragment is a part of Activity by which we can display multiple screens on one activity.