Interview questions for Android mobile Applicaton
1. Explain What Is Scalability?
Scalability is the ability of a system, network, or process to handle a growing amount of load by adding more resources. The adding of resource can be done in two ways.
This involves adding more resources to the existing nodes. For example, adding more RAM, Storage or processing power.
This involves adding more nodes to support more users.
o Any of the approaches can be used for scaling up/out a application, however the cost of adding resources (per user) may change as the volume increases. If we add resources to the system It should increase the ability of application to take more load in a proportional manner of added resources.
o An ideal application should be able to serve high level of load in less resources. However, in practical, linearly scalable system may be the best option achievable.
o Poorly designed applications may have really high cost on scaling up/out since it will require more resources/user as the load increases.
2. Explain When Performing Sanity Test On Mobile Application What All Criteria Should Be Taken Into Consideration?
Installation and uninstallation of the application:
o Verify the device in different available networks like 2G, 3G, 4G or WIFI.
o Functional testing
o Interrupt testing- Able to receive the calls while running the application.
o Compatibility testing – able to attach the photo in message from gallery
o Test application performance on different handset.
o Make some negative testing by entering the invalid credentials and test the behavior of the application.
3. For starters, what’s Android anyway?
Android is a Linux-based, open-sourced operating system commonly found on mobile devices, such as smartphones and tablets. It’s a kernel-based system that gives developers the flexibility to design and deploy simple and/or advanced apps.
4. What is the current version of Android and how old is it?
The current version of Android is 9.0, also called Android Pie, and it came out in August of 2018.
5. What database is used for the Android platform?
SQLite, an open-source, self-contained, serverless database, is embedded in Android by default.
6. Do You Know What Is A Cluster?
A cluster is group of computer machines that can individually run software. Clusters are typically utilized to achieve high availability for server software.
o Clustering is used in many types of servers for high availability.
o App Server Cluster:
o An app server cluster is group of machines that can run a application server that can be reliably utilized with a minimum of down-time.
o Database Server Cluster:
o An database server cluster is group of machines that can run a database server that can be reliably utilized with a minimum of down-time.
Explain A Situation In Which You Persuaded Someone Of Your Point Of View.
7. How Were You Able To Maintain Peoples’ Confidence In That View?
The number of individuals involved in technology decisions is increasing, meaning that architects have to work with a large and diverse set of stakeholders, each with their own motivation and objectives. Architects must have strong influencing skills to ensure that EA meets its objectives. But many architects do not yet hit the bar: GGL data show that only 35% of architects are good at influencing stakeholders. When interviewing EA candidates, find out if they have a demonstrated ability to persuade others.
8. Do You Know What Is The Strategy Used To Test New Mobile App
System integration testing:
o Functional testing
o Installation and uninstallation of the app
o Test HTML control
o Check in multiple mobile OS
o Cross browser and cross device testing
o Gateway testing
o Network and Battery testing
9. What is an android application architecture?
The Android architecture consists of:
• Android Framework
• Android Applications
• Linux Kernel
10. Can you change an application’s name after you have deployed it?
Although you CAN change it, the real question should be “SHOULD you”? Changing an application’s name risks breaking some of its functionality.
o Question 22. Explain With Example Of An Innovative Idea You Used To Get Round A Problem You Had With A Project.
11. How Did The Idea Differ From Normal Solutions?
Business leaders are far more likely to turn to technology to improve products and services than they once were, and many of them are willing and able to run new technology projects on their own. GGL data show that nearly a third of technology spending at the average company is outside of IT, and so architects need to be flexible enough to support these new initiatives, many of which involve new or untested technologies.
12. Speaking of emulators, why is it so important for developers to have access to one?
Since emulators function like an actual hand-held device, developers have a good dedicated “sandbox” to safely create, edit, test, and debug new applications, seeing how they would function on a real device without having to actually risk a real device.
13. What languages does Android use?
Android-primarily uses Java, but it also supports C/C++, which, if used with Android SDK, will run faster.
14. What’s an android framework?
It’s a set of APIs that permits developers to create apps, and consists of:
• Content Providers
15. Why XML is used for frontend development in Android?
XML stands for Extensible Markup Language. XML is a markup language much like HTML used to describe data. XML as itself is well readable both by human and machine. Also, it is scalable and simple to develop. In Android, we use XML for designing our layouts because XML is a lightweight language, so it doesn’t make our layout heavy.
16. What are the components of the Android Application?
There are some necessary building blocks that an Android application consists of. These loosely coupled components are bound by the application manifest file which contains the description of each component and how they interact. The four main components of android applications are:
• Content Providers
• Broadcast Receiver
17. Disadvantages of Android
• Fragmentation provides a very intuitive approach for user experience, but it has some drawbacks, where the development team needs time to adjust with the various screen sizes of mobile smartphones that are now available in the market and invoke the particular features in the application.
• The Android devices might vary broadly. So the testing of the application becomes more difficult.
• As the development and testing consume more time, the cost of the application may increase, depending on the application’s complexity and features.