Ilias Tsagklis

About Ilias Tsagklis

Ilias Tsagklis is a senior software engineer working in the telecom domain. He is an applications developer in a wide variety of applications/services. Ilias is co-founder and Executive Editor at Java Code Geeks.

Android Interview Questions and Answers

Here are some basic Android related interview questions and their respective answers.

What is Android?
Android is a stack of software for mobile devices which includes an Operating System, middleware and some key applications. The application executes within its own process and its own instance of Dalvik Virtual Machine. Many Virtual Machines run efficiently by a DVM device. DVM executes Java languages byte code which later transforms into .dex format files.

What is an Activity?
A single screen in an application, with supporting Java code.

What is an Intent?
A class (Intent) which describes what a caller desires to do. The caller will send this intent to Android’s intent resolver, which finds the most suitable activity for the intent. E.g. opening a PDF document is an intent, and the Adobe Reader apps will be the perfect activity for that intent (class).

What is a Sticky Intent?
sendStickyBroadcast() performs a sendBroadcast(Intent) known as sticky, i.e. the Intent you are sending stays around after the broadcast is complete, so that others can quickly retrieve that data through the return value of registerReceiver(BroadcastReceiver, IntentFilter). In all other ways, this behaves the same as sendBroadcast(Intent). One example of a sticky broadcast sent via the operating system is ACTION_BATTERY_CHANGED. When you call registerReceiver() for that action — even with a null BroadcastReceiver — you get the Intent that was last broadcast for that action. Hence, you can use this to find the state of the battery without necessarily registering for all future state changes in the battery.

How the nine-patch Image different from a regular bitmap? Alternatively, what is the difference between nine-patch Image vs regular Bitmap Image?
It is one of a resizable bitmap resource which is being used as backgrounds or other images on the device. The NinePatch class allows drawing a bitmap in nine sections. The four corners are unscaled; the middle of the image is scaled in both axes, the four edges are scaled into one axis.

What is a resource?
A user defined JSON, XML, bitmap, or other file, injected into the application build process, which can later be loaded from code.

How will you record a phone call in Android? or How to handle an Audio Stream for a call in Android?
Permission.PROCESS_OUTGOING_CALLS: Will Allow an application to monitor, modify, or abort outgoing calls. So using that permission we can monitor the Phone calls.

Does Android support the Bluetooth serial port profile?
Yes.

Can an application be started on powerup?
Yes. 

What is the APK format?
The APK file is compressed AndroidManifest.xml file with extension .apk. It also includes the application code (.dex files), resource files, and other files which are compressed into a single .apk file.

How to Translate in Android?
The Google translator translates the data of one language into another language by using XMPP to transmit data. You can type the message in English and select the language which is understood by the citizens of the country in order to reach the message to the citizens.

Describe Briefly the Android Application Architecture
Android Application Architecture has the following components:

  • Services like Network Operation
    Intent – To perform inter-communication between activities or services
  • Resource Externalization – such as strings and graphics
    Notification signaling users – light, sound, icon, notification, dialog etc.
  • Content Providers – They share data between applications

What is needed to make a multiple choice list with a custom view for each row?
Multiple choice list can be viewed by making the CheckBox android:id value be “@android:id /text1″. That is the ID used by Android for the CheckedTextView in simple_list_item_multiple_choice.

What dialog boxes are supported in android?Android supports 4 dialog boxes:

  • AlertDialog: An alert dialog box supports 0 to 3 buttons and a list of selectable elements, including check boxes and radio buttons. Among the other dialog boxes, the most suggested dialog box is the alert dialog box.
  • ProgressDialog: This dialog box displays a progress wheel or a progress bar. It is an extension of AlertDialog and supports adding buttons.
  • DatePickerDialog: This dialog box is used for selecting a date by the user.
  • TimePickerDialog: This dialog box is used for selecting time by the user.

General Android questions

  • The Activity life cycle is must. Different phases of Activity Life cycle. For example: when and how the activity comes to foreground?
  • Knowledge on AndroidManifest file, For example: Why do we need this file, What is the role of this file in Android app development.
  • Different Kinds of Intents
  • Different Kinds of Context
  • Different Storage Methods in android
  • Kinds of Log debugger and Debugger Configuration
  • How to debug the application on real device.
  • How do you ensure that the app design will be consistent across the different screen resolutions
  • Thread concepts also plus points as we deal with the treads more.
  • Can you able to build custom views and how?
  • How to create flexible layouts, For example to place English, Chinese fonts.
  • What is localization and how to achieve?
  • What are 9-patch images
  • How to avoid ANR status
  • How to do Memory management
  • Inter Process Communication (IPC)
  • What is onCreate(Bundle savedInstanceState), Have you used savedInstanceState when and why?
  • Fragments in an Activity
  • When to use a service
  • How to use a broadcast receiver and register it both in the manifest and in code
  • Intent filters
  • The types of flags to run an application
  • How to do data intensive calculations using threads
  • Passing large objects (that can’t be passed via intents and shouldn’t be serialized) via a service
  • Binding to a service and the service lifecycle
  • How to persist data (both savedInstanceState and more permanent ways)

Let us know if you have any other questions that should be added in the list. And don’t forget to share!

Reference: Android Interview Questions And Answers from our JCG partner at the Android-Tutorials blog.

Related Articles :

Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you two of our best selling eBooks for FREE!

JPA Mini Book

Learn how to leverage the power of JPA in order to create robust and flexible Java applications. With this Mini Book, you will get introduced to JPA and smoothly transition to more advanced concepts.

JVM Troubleshooting Guide

The Java virtual machine is really the foundation of any Java EE platform. Learn how to master it with this advanced guide!

Given email address is already subscribed, thank you!
Oops. Something went wrong. Please try again later.
Please provide a valid email address.
Thank you, your sign-up request was successful! Please check your e-mail inbox.
Please complete the CAPTCHA.
Please fill in the required fields.

17 Responses to "Android Interview Questions and Answers"

  1. Harmindra Sirohi says:

    Great shot

  2. nadendla narendra says:

    good faqs

  3. very helpful post, for the sake of Interview

  4. madhusudhakar reddy says:

    thanks

  5. Pankaj says:

    Nice Doc…….

  6. Uriel says:

    What do you mean by “Passing large objects (that can’t be passed via intents and shouldn’t be serialized) via a service”? … implement Parcelable?

  7. satish says:

    download most frequently asked android interview questions here.
    https://drive.google.com/file/d/0BzRRGL2xSFLGX0VBN1ZmNnNYcTQ/edit?usp=sharing

  8. bob smith says:

    It is useful.

    Might want to proofread it and fix some of the English issues.

  9. Great article. Thank you very much.

Leave a Reply


6 × three =



Java Code Geeks and all content copyright © 2010-2014, Exelixis Media Ltd | Terms of Use | Privacy Policy | Contact
All trademarks and registered trademarks appearing on Java Code Geeks are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries.
Java Code Geeks is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
Do you want to know how to develop your skillset and become a ...
Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you two of our best selling eBooks for FREE!

Get ready to Rock!
You can download the complementary eBooks using the links below:
Close