Can You Develop Mobile Applications (Non-Game) with Unity?

Can You Develop Mobile Applications (Non-Game) with Unity?


Can You Develop Mobile Applications (Non-Game) with Unity?

 For a long time, almost since my high school years, I have been trying to develop games with Unity, and eventually, when I got into the Game Design Department, game design, which used to take up about 40% of my life, suddenly started to occupy nearly 90% of it – the remaining 10% being watching movies, I suppose.

Anyway, let’s leave aside my memories of game development with Unity and focus on today's main topic: is it possible to develop mobile applications other than games with Unity? Is such a thing possible, or if we develop a mobile app with Unity, what are its pros and cons? We will look into these.

Unity is truly a powerful game engine and is a program that makes our job much easier with its multi-platform output support. In fact, after high school, one of the mobile apps we used at the tutoring center was developed with Unity. To describe the app briefly: after we shaded the answer key circles on the physical booklet with a pen, we could scan them with the app to see topic explanations and solution videos for the ones we got wrong. Additionally, whenever we wanted, we could watch the explanations and question solutions in the app without scanning the answers.

Even though two years have passed, I started wondering to myself, based on what I remember, what would be the advantages and disadvantages if we developed a mobile application with Unity. After doing some research on the internet, I wanted to share my conclusions with you.

In my opinion, there is nothing wrong with developing mobile apps with Unity—in fact, if it's a rush project, using Unity could even be an advantage. Of course, don’t let this immediately make you think "let me use Unity", because Unity is a game engine and doesn't have many features that come local on programs like Android Studio—so while it can make your life easier in some cases, it can also make things more difficult.

Let me talk about the pros and cons; whether to use it or not is up to you.


Can You Develop Mobile Applications (Non-Game) with Unity?


Advantages of Developing Mobile Applications with Unity

Abundance of Resources

Yes, there are many resources that let you develop games with Unity, and there may be very few resources specifically for mobile apps—however, once you understand how to use Unity, in fact, you can develop mobile applications quite comfortably with it.

There are much more resources compared to languages like Flutter, Swift, or Kotlin. Since Unity works with C#, even if you don’t find the resource you want for Unity, you can take code and tutorials from C# forums and adapt them to Unity, which is quite easy.

Easy to Use, Popular Programming Language

This might be the biggest reason for me to use Unity when developing mobile applications, especially for beginners.
Unity is a program that is very easy to install, easy to get outputs from, and uses a very common programming language like C#, so it’s easy to learn and get used to.
With its many plugins and features, it actually provides more convenience in many aspects compared to other development environments.
For example, instead of searching for training videos for hours on the internet to add ads or implement in-app purchases, you can simply include the ad service and in-app purchase system provided by Unity into your project and make it usable with five-minute tutorial videos.

Cross-Platform Output & Development

Unity works on many operating systems such as Windows, Linux, and Mac and also offers outputs to many platforms like Windows, Linux, Mac OSX, Android, iOS, and consoles. (Although Android Studio can work on many operating systems, unfortunately, it can only output for Android—but let's not overlook Xamarin in this regard…)

Powerful Features

Since Unity is actually a game engine, it has very powerful features behind it; if the application you develop has AR support or you consider using 3D models, you will see that it is quite advantageous compared to other development environments.
Of course, it's not possible to list all its features and advantages here, but I tried to concise the ones that come to my mind without boring you.

Unity UI

Disadvantages of Developing Mobile Applications with Unity

You can develop very powerful and beautiful mobile applications with Unity, but this doesn't mean every mobile application can be made with Unity or that perfect apps can be built. Now, let's look at the disadvantages of developing apps with Unity.

Large Application Sizes

By its nature, Unity contains many libraries and features, so the output files can be larger than those taken from basic IDEs like Android Studio or XCode.
Actually, it’s not such a huge difference, but there could be a 1-2 MB variation. (Depending on the app developed, it could be less or more.)

Incomplete Support for Features

Actually, I may have misnamed this section, but let me explain: there may not be support or access to some native features of certain platforms. For example, through an app you make with Unity, you can’t change a mobile device's WI-FI settings; it instead redirects you to the settings menu.

In the past, we couldn’t access features like fingerprint recognition, but today this is no longer an issue thanks to specially written frameworks..

Because there are no standard system buttons or input field objects, you have to use Unity's own components or do custom designs. (Actually, I don't think this is a disadvantage..)