The APP Solutions’ Boilerplate for Android Development

Architecture is a critical element of any software application. In many ways, it defines the way an application works and moves further. Every architecture, in one way or another, is bound to make sense in a particular project.

Good architecture is alike a tight ball with no spare parts hanging out: everything is in the right place and interconnected, ticking like a clock and fitting like a glove.

However, software architecture is not something where one can reinvent the wheel. And there is no need for that. It is more a combination of the blocks than anything else.

What is boilerplate?

Every project starts with a foundation. This foundation counts in numerous factors, write in a number of scenarios and includes effective solutions for various tasks. Every element is refined over time until it is deemed foolproof. Over time, project after project — companies collect enough various solutions to form a particular set of templates to be used as a foundation.

These templates are known as boilerplates.

Why they exist? In many cases, it is inappropriate to start everything from scratch. Because of that developers compose templates for various elements of the application. These templates are the results of many tries and fail as well as multiple projects – basically, cream of the crop.

Since the majority of the projects are functioning more or less in the same way – it is far more reasonable to construct their foundational elements from a boilerplate than to write the same code again.

Boilerplates are useful from multiple standpoints:

  • Boilerplates are like a starter project.
  • With a boilerplate, developers can save time on forming a clean architecture and fully concentrate on the development, refinement, and testing of specific features.
  • Boilerplate is a tried and tested solution that had already proven its worth.
  • The streamlined and unified structure of the boilerplate makes it instantly accessible for the new members of the team.

Want to Learn More About The APP Solutions Approaches In Project Development?

Download Free Ebook

Android App Boilerplate Code

Boilerplate isn’t just a code per se, it’s a set of instruments (including code). This is a ready-to-use Android template that The APP Solutions company app developers use as a foundation for new Android projects (based on Java, not Kotlin Android). It is an amalgamation of many years of experiments and lots of different projects into a refined, rock-solid foundation.

Get the Android App Starter Boilerplate here.

This boilerplate has every single utility you need to start your own application. It is a vessel. All you need to do is to fill it with your idea and roll on. Every element is designed in a way so that it could function from the get-go and can be changed without breaking anything.

You might ask “If it is that good, why are sharing?”. Well, the answer is plain and simple, we are sharing because we think it might help in one way or another.

That is what The APP Solutions is standing for — we are ready to share our knowledge as it can serve as a catalyst for something unexpected.

This repository was developed by The App Solutions Android team: Severyn, Dmytro, and Viktor.

Do you want to know more about Android or IOS development? Check out our article.

Some of the solutions were inspired by boilerplate examples of Ribot Android Boilerplate, Google Android Blueprints, android10 Clean Architecture, and others. Certain elements were modified.

Want to receive reading suggestions once a month?

Subscribe to our newsletters


Mobile applications are improving our lives – we have an app to order food, hail a taxi, pay bills, and even walk a dog. If you have a brilliant idea for your mobile app startup, you are probably wondering how how to make an app? Is it difficult to create an app? In fact, the mobile app development process consists of several stages that are not so obvious at first glance. 

In this article, we explain the main stages of the app development process. 

After reading, you can start preparing the required documents, and you’ll know how to reply if a business analyst asks you to explain how your app will work. 

Let’s start our successful app idea journey!



Step 1. Launch the inception phase 

So how to make an app? First of all, you need to describe your business app idea to the development team. This is what happens during the discovery phase, one of the milestones for mobile app development.  During this stage, you and your mobile app development company will clarify all the details of your future project. 

To enter the discovery phase, you need to prepare the following:

  • Business app idea

  • Project descriptions

  • App mockups

In addition, the project inception phase requires a bunch of documents from the development team, described in the image below.  

inception phase mobile app development documents


During the discovery phase, the team will explore and elaborate on the concept of your app. Then, based on your app type, the team will define the scope of your project and technical solutions to implement. The main goals of this phase are: 

  • Specify your requirements 
  • Examine the project feasibility 
  • Identify the app MVP scope

Now that the project’s scope and requirements are defined, you and your development team enter the next phase of creating a mobile app. 



Step 2. Create a phone app’s Technical documentation

Also known as a technical specification or software documentation, this paper is a manual of your product with outlining requirements and business logic. 

The document will include everything starting from an intro, the purpose of the app, all definitions of technologies to be used, testing to be done, timeframes, budget, and even concerns or doubts. This part is continuous throughout the entire development period.


To create Technical Documentation, our team conducts the following activities: 

  • Keeping ongoing dialogue with the client to identify the number of app users (buyer, seller, admin)
  • Suggesting ways in which the project can be implemented 
  • Determining the main functions of the app 
  • Elaborating the level of requirement granularity 
  • Suggesting the interface structure 
  • Identifying the app architecture, i.e., types of interactions between the systems and subsystems 

After making technical documentation, the development team agree on it with the client and estimate the project’s scope and cost. Now that all requirements are clarified and user stories are written, the team will do functional decomposition to break user stories down to particular functions, prioritize them, and create a mobile app development project plan. Such a plan will include essential features to add to the app MVP and features to implement next. 



Step 3. Build a phone app prototype 

Creating an app prototype is one of the steps to making an app that will meet your business needs. At this stage, our team uses project requirements and technical documentation from the previous steps to build an app prototype. In this way, you will experience the app flow and give feedback on whether the prototype meets your expectations. To create the app prototype, our team do the following: 

  • Creating a sketch – the very first and draft version of your app on paper that sets up significant aspects – logics, number of screens, and the way they interact with each other;
  • Creating wireframes – provides the visualization of the draft app structure;
  • Creating a clickable prototype – helps to find out and analyze all possible use cases, discover logical breaks and technical inconsistencies in the original idea;
mobile app prototype

[The APP Solutions app prototype example]

  • Designing app skins/final design – collecting all wireframes and putting these together to get the final design.

Now that the prototype is ready, the team will approve it with you and enter the next stage. 


Step 4. Build the app design

Using an app prototype from the previous stage, UX/UI designers will create the design of each screen for your app. During this stage, the team will agree with you on how the app should feel and flow. Here, designers will develop:

  • The layout of app navigation 
  • Icons
  • Buttons
  • Text fields
  • And other visual elements

Depending on your project’s complexity, the mobile app design creating stage might take from one week to three months. 

At the end of developing a design for a mobile app, you will receive:

  • UX wireframe
  • Separate app designs for iOS and Android platforms
  • An interactive app design prototype.


Step 5. Start app development

Now the team will start the next phase of the app development life cycle, during which they will create:

Front-end – in other words, client-side development, that is about tools and techniques used to create a presentation layer of the software for direct user interaction with it;

Backend/cloud storage-a server/database part of coding and maintaining a technology that connects the front-end part of the app with the data access layer.

To create the app for iOS, developers use:

  • Objective-C
  • Swift
  • Python

As for Android apps, they will use: 

  • Java
  • Android Native Development Kit (NDK)
  • Kotlin
  • React-native
  • Firebase

During the development stage, one of the steps to developing an app, we provide clients with project updates. In this way, we assure work transparency and make sure the developers are on the same page as the client. 

The cost of mobile app development depends on app complexity. If you want to estimate your app, use our project cost calculator


Step 6. Test mobile app 

Now that the app is ready, the development team conducts testing, which is one of the steps to building an app. Our testers and QA managers conduct the following tests:

  • Compatibility testing – running the app on different devices and screen sizes;
  • Interface testing – checking the navigation, menu, and button performance;
  • Device compatibility testing- how the app looks and performs on various screen sizes;
  • Low-level resources testing – examining the app running on low battery, slow Internet connection, etc.;
  • Security testing – quality assurance of sensitive data safety;
  • Beta testing – preliminary focus-group examination of the app and getting feedback.


Step 7. Deploy the app to marketplaces

Now that the process of creating an app is finished, it is time to deploy the app to the app market, but before doing this, you need to make the app compatible with app marketplace requirements. To give you an idea of what those requirements are, we have gathered them below: 

Prepare Android app for Play Market 

Prepare iOS app for Apple app Store 

Here is Google’s official checklist to get your app ready for a successful launch on Google Play Store:

  • Test for Quality
  • Determine your App’s Content Rating
  • Confirm the App’s Overall Size
  • Confirm the App’s Platform and Screen Compatibility Ranges
  • Prepare Promotional Graphics, Screenshots, and Videos
  • Build and Upload the Release-ready APK
  • Plan a Beta Release

To release your app on the App Stores, you should do the following: 

  • Test your app for crashes and bugs
  • Ensure that all app information and metadata is complete and accurate
  • Provide an active demo account and login information
  • Include explanations of non-obvious features and in-app purchases in the App Review notes.

You also need to consider that mobile apps marketplaces charge fees for the app upload. 

  • Apple App Store fee of $99/year
  • Google Play has a one-time fee of $25


mobile app development project stages and members

[Mobile app development process: steps and dev team members]

Download Free E-book with DevOps Checklist

Download Now

In a nutshell 

The app development process includes more than the design and code creating steps. At the very beginning of your project, your own app development team should create thorough technical documentation, functional requirements, and user stories.

Now that you know how to build a phone app, the last thing that remains is to hire a development team to turn your idea into reality. 

What solutions can we offer?

Find Out More