Top 50 Mobile Developer Interview Questions You Must Prepare 16.Aug.2022

On state tritions can be responded to state changes in an appropriate way by calling corresponding methods on app's delegate object.

Example: 

  1. applicationDidBecomeActive method can be used to prepare to run as the foreground app. 
  2. applicationDidEnterBackground method can be used to execute some code when app is running in the background and may be suspended at any time. 
  3. applicationWillEnterForeground method can be used to execute some code when your app is moving out of the background 
  4. applicationWillTerminate method is called when your app is being terminated.

Scoping starts with a long, hard look at the device. Mobile devices offer different form factors, screen size and resolution, computing power and functionality. They run different operating systems and have other methods of retrieving data such as wifi or 3G.

The challenge is to understand the device and how it will be used to the best advantage: focus on the benefits of the device, such as size and portability, and ensure that the user experience will be optimised.

iOS 4 and above supports multi-tasking and allows apps to remain in the background until they are launched again or until they are terminated.

Cisco WebEx develops mobile meeting applications for a host of devices. The apps are developed in the programming language best suited to the device and OS we are approaching. So, we develop using C++ for Apple devices running on iOS, Java for BlackBerry devices, Java for Android devices and so on.

They handle communication between Android OS and applications.

The developer should name at least 4 of these 6 items below, as these are essential within each Android project:

  1. AndroidManifest.xml
  2. build.xml
  3. bin/
  4. src/
  5. res/
  6. assets/

Also referred to simply as Widgets, App Widgets in the Android world are miniature views that are embedded within Android apps and typically display periodic updates. Music players, weather updates, sports scores, and stock price changes are all examples of data that can be displayed in an App Widget.

Andy Rubin, Rich Miner, Nick Sears.

  • Google now (voice assistant)
  • NFC (Near Field Communication)
  • Unlock your phone by your face
  • Use your phone with joystick to enjoy gaming experience
  • Connect your phone with LED TV via MHL or micro HDMI cable
  • Screen Capture
  • Multitasking Future (Task Switcher)
  • Data Usages (Check and also set limit from device)

UI Automation API is used to automate test procedures. Tests scripts are written in JavaScript to the UI Automation API. This in turn simulates user interaction with the application and returns log information to the host computer.

iOS development requires Intel-based Macintosh computer and iOS SDK.

Some of the unique challenges are: designing for a small screen size and resolution; energy management that focuses on optimization of battery life; managing data access in an environment of variable and potentially inconsistent network access; working with devices that offer limited processor power and RAM in comparison to a PC.

Pick the platform you want to develop on wisely; focus only on one or two platforms in the beginning; and start simple. Focus on core functionality first and add features in subsequent versions as you gain insight and experience.

They handle background processing associated with an application.

The important ones are flexibility, speed, and a keen understanding of the user experience. Mobile development jobs require you to work quickly and be ready to respond to lots of changes, such as hardware and software updates, patches and design changes. The tablet is a great example - we have entered into a 'post PC era' and the types of things that a tablet will be used for is still evolving.

Any of the following 5 possible options are acceptable:

  • SharedPreferences
  • Internal Storage
  • External Storage
  • SQLite Database
  • Network connection

Every Android app must have this manifest file in its root directory named 'AndroidManifest.xml'. The file includes critical information about the app, including the Java package name for the application.

SBJson framework is supported by iOS. It is a JSON parser and generator for Objective-C. SBJson provides flexible APIs and additional control that makes JSON handling easier.

The UIKit infrastructure takes care of delivering events to custom objects. As an app developer, you have to override methods in the appropriate objects to process those events.

An open-source operating system used for smartphones and tablet computers.

UIKit classes should be used only from an application's main thread. Note: The derived classes of UIResponder and the classes which manipulate application's user interface should be used from application's main thread.

An app can get into InActive state when the user locks the screen or the system prompts the user to respond to some event e.g. SMS message, incoming call etc.

An app is said to be in active state when it is running in foreground and is receiving events.

src: 

This contains the .java source files for your project.

gen: 

contains the .R file, a compiler-generated file that references all the resources found in your project. You should not modify this file.

bin: 

contains the Android package files .apk built by the ADT during the build process and everything else needed to run an Android application.

res/drawable-hdpi

This is a directory for drawable objects that are designed for high-density screens.

res/layout

This is a directory for files that define your app's user interface.

res/values

This is a directory for other various XML files that contain a collection of resources, such as strings and colors definitions.

AndroidManifest.xml

This is the manifest file which describes the fundamental characteristics of the app and defines each of its components.

They dictate the UI and handle the user interaction to the smartphone screen.

An Intent is exactly what it describes. It's an "intention" to do an action.

An Intent is basically a message to say you did or want something to happen. Depending on the intent, apps or the OS might be listening for it and will react accordingly.

There are two types of intents in android:

  • Implicit Intent
  • Explicit Intent

We have created a single unified architecture that covers all platforms, so that we can ensure a common user experience across devices. However, different platforms utilise different operating systems and system tools, so we have to create a unique client code base for each platform - iOS, Android, and Blackberry. It is possible to reuse some code across Blackberry and Android.

ANR stands for "Application Not Responding". It's a dialog box that appears when an application doesn't respond for more than 10 seconds (sometimes it can be less than 10 seconds). The ANR dialog box offers the user the option of either closing the app or waiting for it to finish running.

AVD Stand for Android Virtual Device (emulator), The Android SDK includes a mobile device emulator - a virtual mobile device that runs on your computer.

A follow-up to the previous question, there are a number of possible wers here. What you want to hear is that you want as little work done as possible on the main thread, also known as the "UI thread".

Since that is the core single thread that your application runs on, you would want to keep activities that require more complex computations or network and database connections, for example, on separate worker threads so as not to slow down the main thread.

Platform fragmentation is the biggest, the need to develop and maintain separate apps on each of the different platforms.

Others include: varying levels of maturity of software developer kit and technical documentation; different user interface guidelines; different specs for processor and RAM; differences between mobile platforms in terms of how security is handled, multi-tasking is supported, and content is rendered.

You want to find out that this person will seek to truly understand what you are trying to accomplish with your app, and the functionality.

The following items are good to hear:

  • Objective statement or purpose of the app for the app publisher
  • Description of the target audience or user demographics
  • Any existing apps that it might be similar to
  • Wireframes
  • Artwork; The best developers will say they require the artwork to be completed before development. This avoids delays, and helps the developer understand the look, feel and branding you are trying to achieve.

An application behaves differently when running in foreground than in background because of the limitation of resources on iOS devices.

  • Open-source
  • Platform-independent
  • Supports various technologies (having number of native application like: camera, bluetooth, wifi, speech, EDGE)

iOS Simulator can be used to test mobile applications. Xcode tool that comes along with iOS SDK includes Xcode IDE as well as the iOS Simulator. Xcode also includes all required tools and frameworks for building iOS apps. However, it is strongly recommended to test the app on the real device before publishing it.

An app is said to be in 'not running' state when: 

  • It is not launched. 
  • It gets terminated by the system during running.

Software Development Kit.

Containers holds objects and widgets together, depending on which items are needed and in what arrangement they need to be in. Containers may hold labels, fields, buttons, or even child containers, as examples.

Note: you need to past this code on onClick method.

Intent i = new Intent(getApplicationContext(), Activity2.class); 

startActivity(i);

The UIKit framework is used to develop application's user interface for iOS. UIKit framework provides event handling, drawing model, windows, views, and controls specifically designed for a touch screen interface.

They handle data and database management issues.

'manifest' Note: The 'permissions' element is the next best wer if the developer assumed you meant the first element within the 'manifest' structure.

An app is notified whenever the operating system moves the apps between foreground and background. The operating system improves battery life while it bounds what your app can do in the background. This also improves the user experience with foreground app.

Android Developer Tools.

It me a robot with a human appearance.

An activity is a single, focused thing that the user can do. when ever user click on GUI the next Activity will be start and new GUI set base on coding.

AIDL supports charSequence, list, map, string, and all types of native java data types.

  • Most of us are aware of features like 
  • Live wallpaper
  • Camera
  • Messaging
  • Bluetooth
  • WIFI
  • Web Browsing
  • Music
  • Alarm etc. etc….