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

Android mobile app developer

Android is the largest global mobile platform. There are billions of devices running the Android operating system around the world and their numbers are growing every day.

The key characteristic of Android is that it covers a broad range of devices by various characteristics. For instance, the Android operating system is installed on a huge variety of smartphones – starting from the cheapest ones and finishing with smartphone flagships.

This gives publishers huge opportunities in terms of media coverage. The operating system also supports many other products categories, including TV’s, kitchen appliances, laptops, tablets as well as wearable devices.

This gives publishers huge opportunities in terms of media coverage. The operating system also supports many other products categories, including TV’s, kitchen appliances, laptops, tablets as well as wearable devices.

There are many opportunities in the Play Market for entrepreneurs at this point. Though hundreds of applications are submitted to the app stores for android every day – you can still find a whole lot of success stories.

At the App Solutions, we know that there is no universal measure for app success because it heavily depends on the unique set of business objectives. In some cases the success would be the implementation of the asset management tablet application and the revenue growth due to the workflow process optimization, in other cases, it could be huge profits from the in-app purchase in an app submitted to the Play Store. Each client has his own objectives and we respect that when delivering the winning mobile solutions.

We are capable of providing all sorts of Android applications that can complement your business success. Our experience in the sphere of mobile development for Android allows us to provide the development services of all complication levels.

If you have an idea for an Android app develop it with professionals. The team at The App Solutions has a broad experience in delivering high quality and successful mobile solutions for Hotels, Restaurants, Media, E-commerce, Education, and Various Enterprises.

Contact us today in order to outsource an app development company and find out how you can benefit from hiring an Android app developer for your project from The App Solutions.

Want to receive reading suggestions once a month?

Subscribe to our newsletters

Time estimate required for iOS or Android Mobile App Making

Developers of mobile applications before designing and promoting their inventions in app stores should build a detailed plan and a proper mobile strategy and ask themselves: “How much does it cost and How long Does it take to design and build an App?” In this article, we will consider the question of time expenditure. As a result, you’ll be able to evaluate how hard is it to build an app.

You should notice that coding is hard

It usually takes four months to design successfully and develop an app that is ready for launching and public release. As you know, development means the engineering part of the procedure. This time frame includes a coding system, the product definition, and design stages have to be built before the development of a mobile app.

Such critical elements as the composition of your development team and a preferred development methodology will influence your timeframe.


I have made a certain assumption: your mobile app will be assimilated with a back-end server through APIs. The APIs and software tools could already exist or could be created in parallel.

If you are building out both: a back-end and the front-end at the same time, you should give your back-end team a head start. They will have some time to fix their endpoints and APIs before the front end team starts development.



Back end engineering usually consists of the following features:

  • Data composition: the creating blocks of any native apps back end
  • Client management: security and access check, creating user accounts, authentication control
  • Server-side logic: how to cope with requests from the app’s front-end
  • Data assimilation: permitting users to access data and publish data to third party sources (for ex. social networks)
  • Push: maintaining interaction with users
  • Version control: make version 2 exist, without breaking version number 1


Front end engineering includes the following activities:

  • Front-end logic: describing what activities are handled by code locally
  • Caching or Cache: keeping data locally to increase load time
  • Synchronization: resolve data conflicts
  • Wireframing or screen blueprint: plan for user interface and experience
  • 3 UI types:
  • UI design: build perfect mock-ups of user interface
  • UI development: transforming mock-ups into working user interface code
  • UI polish: user interface, that clearly stands out from the crowd

With constant software development and an appropriately prioritized minimal existence of the product, 3 to 4 months have to ensure enough time to release a product you’re ready to promote via web network. A 3 to 4-month timeline is attractive, but not easy to achieve.


Want to Learn More About The APP Solutions Approaches?

Download Free Ebook

Here are a few fundamental assumptions that you have to accomplish while developing a mobile app

1. Assemble a professional team

If you want to develop an app for Android or iOS smoothly, you will need the right team with targeted directions. Designers and project managers have to create the documentation before development starts. It is not involved in the 3-4 month development timeline(mentioned above). Depending on your development preferences, this design phase could vary from a few weeks. Make sure your project manager is familiar with such tools as Pivotal in order to create specific user stories that your developers will be coding. You should also hire a quality assurance analyst to define bugs in your code.

2. Correct sequence of operations

If you are designing the front end of your mobile app together with the back-end infrastructure, it’s important to set up functionality indications you have built. These two infrastructures are interdependent: give your back end engineer some time before your front end engineer develops functional code. If the back end is not well determined and is not functional, it will reduce the productivity of your front end engineer.


3. Limit external dependencies

Interaction with third-party technologies is always an unknown factor in any mobile app development cycle. Documentation has to be created in order to tell you how processes should work. If need to know whether or not the technology works properly, try to write a tester code and you will see what data you receive. In conclusion, attempt and tackle the hard and unknown tasks first.

Want to receive reading suggestions once a month?

Subscribe to our newsletters

Android Apps vs. iOS apps – What and Why is Better?

Websites are no longer the best way to access information, products, and services. 

Android and iOS devices with mobile applications more convenient for these tasks compared with traditional websites.   



  • App Annie reveals that mobile apps now account for 10 out of every 11 minutes we spend using mobile devices, while web browsing is only responsible for 10% of our mobile time.
time users spend on mobile apps
  • Number of Apple App Store and Google Play mobile app downloads worldwide – Statista claims:

Apart from growing popularity among users, mobile applications also work perfectly as an engaging business tool. Why? Mobile applications can leverage native mobile device functionality, such as Push-notifications, geolocation, camera, etc. 

That’s why smart entrepreneurs, who want to stay connected with clients in the distractive digital world, can’t ignore mobile applications. The same strategy works for start-ups who prefer building mobile-first versions of their products while using websites and landing pages as a marketing tool. 

But before asking a mobile app development company for a free quote, you need to decide which of the operating systems you are going to hit: iOS or Android. The first thing to do for dealing with the “Android apps vs iOS apps” dilemma, is identifying your app’s target market. To be on the safe side, learn also about differences in both platforms’ tech stack, how much each app will cost you, and how much time the project will take. 

We’ve decided to create this article to help you make the right decision for iOS or Android application development. In this article, we’ve dug deeper into the tech stack of both platform use and listed the pros and cons of iOS and Android application development. We’ve also highlighted other factors that impact stakeholders’ decisions when choosing between Android and Apple and our experience of creating both iOS and Android projects. 

Ready? Let’s start!


Tech Stack

Let’s see what technologies mobile developers use to build projects for different platforms. 

Developing Android projects

To create Android apps, developers use Java, C++, and Kotlin programming languages. Furthermore, Android developers use the following advanced Google development tools:

  • Android Jetpack, a set of pre-build Android components
  • Firebase is known as a comprehensive mobile app development platform
  • Android SDK development kit, connected with Android Studio, an integrated development environment

Now, let’s compare iOS advantages and disadvantages.


Developing iOS projects

While the Android operating system has an open-source code, iOS has closed source code. Closed source code means that iOS works on Apple devices only. The development team might use Swift or Objective-C. Also, iOS developing tools include:

  • iOS SDK, or Software Development Kit, is integrated with the Cocoa Touch UI framework. The framework provides graphical elements, user interface controls, and others.
  • XCode is the official integrated development environment (IDE) for iOS development.
  • Swift Playgrounds is a development environment for Swift.
  • TestFlight is an online service for over-the-air installation and testing. This online service allows developers to test apps and collect valuable feedback before the app release.

Pros and Cons

Below, we have gathered the pros and cons of Android and iOS development. You will also find a platform comparison to help you make the right decision.

Advantages of developing Android 

  • Open system. Android developers receive access to more features restricted in iOS applications.
  • Design. Developers use extensive Google design guidelines for developing an intuitive user interface.
  • Fragmentation. On the one hand, we may consider fragmentation as a disadvantage, but you can develop apps not only for an Android smartphone, but also for a broader range of devices, including wearables, TVs, in-car systems, and others.
  • Release. In comparison to iOS, Android apps are easier to publish to Google Play. The whole process may take just a few hours.


Disadvantages of Android 

  • Fragmentation. As we said, fragmentation may also be an Android drawback. Nowadays, Android devices come in different screen sizes, resolutions, etc. The development team might need more time to adjust the app’s features for particular devices.
  • Testing. Android versions and devices might vary. Thus, it might take more time for QA specialists to test your app.
  • Costly. The more time the development and testing stage takes, the higher will be the Android app price. But the price also depends on the app’s features and complexity.

Advantages of iOS 

  • Revenue. As you may already know, Apple users spend more money on app purchases compared to Android users. 
  • The number of devices. As we said, iOS powers only Apple products. For that reason, your app should fit a limited number of screens and devices.
  • UI design. Apple provides developers with a detailed style guide for the app UI. The team needs less time, making it more affordable in the app design stage. 

Disadvantages of iOS 

  • App release. Keep in mind that the App Store has quite strict review guidelines. The marketplace can reject your app due to security issues, a lack of valuable content, or poor performance. Besides, the developer should submit your app for real-life testing, which usually takes a few days.
  • Flexibility. iOS apps are usually hard to customize because the platform has many restrictions. 

Now, it’s time to compare both platforms.


Android vs. iOS App Development: Which is better for you?

To identify your target market for your mobile application, you should consider the following factors:

Market share 

The amount of smartphones that support one or another mobile platform shows us how many potential users your application can have. Sure, those figures are just theory, but they still matter.  

Statista, a company specializing in market and consumer data, reports the following data: 

  • In 2019, smartphones running the Android operating system held an 87 percent share of the global market and will increase over the forthcoming years. 
  • The same year, iOS devices developed by Apple, had a 13 percent share of the market. 
statista global market share

[Share of global smartphone shipments by operating system from 2014 to 2023]

Thus, by developing an Android-first project and uploading your Android project to Google Play Store, you can receive more users, compared to the results after building an iOS app. 



Demographics tell us a lot about Android and iOS users. For example, their country:

apps demorgaphic

[Source: Digitaltrends]

Android currently holds the most significant global platform share. This market share comes from developing countries and lower-income areas.

iOS users are younger, with a higher education level, greater engagement, and earn more money. Thus, they spend more per app.

mobile app device users profiles


iPhone Users

Android Users

37% more likely to have a graduate degree

80% more likely to have only a high school diploma

29% more likely to be older women (35+)

More likely to be younger men (34 and younger)

14% more likely to be extroverted

12% more likely to be introverted

67% more likely to make over $200K and enjoy spending it

24% more likely to earn $100K or less

More likely to be in Media/Marketing/Business

More likely to be in IT/Energy/Utilities

39% more likely to be high-maintenance

12% more likely to be pet lovers

50% more likely to have visited more than 5 countries

71% more likely to have never traveled abroad

Now that you know about Apple and Android users, it is time to learn about other important factors for successful decision-making: 

Development cost

When choosing between iOS vs. Android development, consider that the estimated app prices might be higher for Android development. As previously mentioned, Android OS powers many devices with different screen sizes. This fact increases the development time, as well as the costs. On the other hand, iOS has a limited amount of devices, which also speeds up the development process. However, iOS vs. Android development costs depend on the number of features and app complexity.

Based on our previous projects, we share the following mobile projects estimations :

  • Basic app for an Android phone with basic features will cost from $15k and take two or three months to develop
  • Medium complexity apps with third-party integrations, like payment gateways, might cost from $30K and take three months to build.
  • Complex applications, such as social networks or taxi-hailing apps, with database and API integrations, will cost from $50K and take five+ months.

When comparing iOS and Android for developing an app, consider that both Google Play Store and Apple App Store have their publishing apps fees. In the case of Android apps, you will need to pay a one-time registration fee of $25. To publish your app in the Apple marketplace, you need to pay $99 annually.



iOS and Android OS have their simulators for app testing. However, there are some differences between them. TestFlight, the iOS testing environment, is faster than the Android emulator. But the Android emulator virtual machine is more effective and has a more realistic representation.

App Updates

Both operating systems release new OS updates once a year. Thus, consider that updating the iOS apps for the new OS release may take up to two weeks and impact your product roadmap and business strategy. As for Android, it will take several hours to publish the new app release.

Revenue Models

Another factor you need to consider when deciding on the platform is where the majority of your audience is. Android has a higher percentage of ad-supported apps, while the iOS development platform relies predominantly on purchases.

The Statista Digital Market Outlook estimates that revenue across most segments will increase over the next few years and overall will reach around 613 billion U.S. dollars by 2025. 


When choosing between iOS vs. Android app development, consider that it is more important to have higher amounts of users or fewer users who frequently engage. This choice will depend highly on how you’ll decide to monetize an app. Android has a broader audience in general, whereas iOS has more engaged users.


Comparing Android vs Apple Development

To see the differences between iOS development vs Android development, check the table below:

Key aspects

iOS-based platform

Android-based platform

Development language


Java, Kotlin

Integrated development environment


Android Studio

The target audience

More valuable

Less valuable

Design philosophy


Specified requirement

Development complexity



Development time

Depends on complexity

Depends on complexity

Apple Store and Play Store Acceptance and Deployment speed

Long app review by app stores

(7 days on average)

Short app reviews process

iOS or Android: What to choose? 

When choosing between Android and iOS development, take into account the advantages and disadvantages of these two platforms. But it would be best if you based your choice on your budget, business idea, time to market, and other factors we have discussed in this article.

Chose iOS-first development in the following cases:

  • You want to generate higher revenue per user
  • You are looking for a less complicated development process
  • Your priorities are user data security and privacy.

Choose Android when:

  • You want to reach a wider audience
  • You are in tight deadlines to get the app to the Store
  • You want to customize the app 


The APP Solutions experience

the app solutions app development flow

At The APP Solutions, we deliver projects in time thanks to a well-organized workflow.

the app solutions project development process

We developed several mobile platform products and want to share Android and iOS development insider information from the developer’s perspective. 

Download Free E-book with DevOps Checklist

Download Now

Android applications are easy to build, upload to the marketplace, and maintain. But they don’t support advanced features for the authorization security, such as Face ID, that iOS provides. 

Thus, if you want to create an application with ultimate security, you’ll need to integrate additional authorization solutions from third-party providers, which increases the development cost. 

the app solutions project emberrol

[The APP Solutions Android project Emberlow]

iOS applications are also easy in development. But the official app marketplace for iOS applications has strict rules. For example, it doesn’t allow applications to read SMS and log calls, which some HR and staff management applications require. 

newbii ios app development by the app solutions

[The APP Solutions iOS project Nuwbii]

One example is a casino management application we developed for our client from Las Vegas. To find out more about the solutions we used in this project, read a full case study

What solutions can we offer?

Android vs. Apple: Which Platform to Develop for First

The decision to create an iOS or Android project depends on your target market, areas where you will launch your app, the portrait of target users you want to attract, and the business functionality your app needs. The development timeline and budget are also important factors to consider. 

If you want to launch your business application as a minimum viable product in tight deadlines and with a limited budget, the iOS app may be the way to go.

But in case you’re targeting global markets, including Asia and Latin America, and your business idea requires features that Apple doesn’t support, then launching a project for Android devices will be your best bet.

Despite the platform you select, you can build another version of your application for the other platform with time. In this way, you’ll enhance more users on both operating systems who want to use your app.

To receive a free consultation from an app developer considering your business application, drop us a line


What our clients say 


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