How to use Unity to develop Apps

iMoegirl
3 min readMay 22, 2021

1. Background

Some time ago, the company was disbanded due to funding problems, and I was a little tired of working overtime, and the funds could last for a period of time, so I decided to try what I have always wanted to do, freelance, and become a professional Independent developer.

I have been working in a game company before, mainly doing Unity client development, doing casual games, SLG, MMO, some projects are online, some projects are also dead in the development process because of the company’s non-technical issues, these are not our developers Can be controlled.
As an independent developer, my main skill is Unity, so I use Unity to develop products. Today I want to talk about using Unity to develop App.

Unity is a game engine, which is very suitable for developing games, but it is not impossible to develop apps. It mainly depends on what the product to be developed is, and the functions that the product needs to do, whether there is a fatal problem for implementing it with Unity.

I think technology is for the product. For independent developers, it is very good to use the technology they are most familiar with to make the product they want to make. You don’t have to worry about which technology should be used, and make it first. . Of course, being happy is the most important thing.

2. The product I just launched, Omoment.

The product I just launched is an app that records life’s bits and pieces. Through a picture, a paragraph of text, you can record a certain moment, you can know how long it has been since the present, and you can also use grouping to track a certain series of things. A group can also use the story mode to replay the whole process. For example, record the daily breakfast, your own fitness process, the opening time of a thing, and so on.

You can download OMoment from AppStore or GooglePlay.

3. Advantages of using Unity

Using Unity to develop App, most of the work is the UI part, I mainly use UGUI. Unity has a UIWidget, something similar to Flutter, I didn’t use it, I think UGUI is more convenient.

The visual UI layout is too convenient and efficient.

Some components can be directly made into a Prefab, and other modules can be used directly by dragging them out.

You can easily add various effects, such as button click sound effects, background music, various special effects in the game, and can also be used in appropriate places in the App. After I successfully purchased it in the material time, I added a firework Effect.

Hot update of functions and resources can be done like a game, provided that the logic is implemented using Lua and the like.

After the UI management module is completed, the subsequent App can be used directly, as long as the specific UI logic is implemented.

Various third-party SDKs, use advertisements, and statistics, all have good support for Unity, and access is very convenient.

Unity is cross-platform. Most of the logic of the entire App does not need to be divided into platforms. Only specific ones, such as in-app purchases, third-party SDKs, etc., need to be considered for platform-related logic.

Some people say that the operation efficiency will be low and the electricity will be consumed, but it is actually okay.

4. Disadvantages of using Unity to develop apps

When it comes to iOS and Android system-related things, you need to implement it yourself. Use sliding from the left to the right, switch pages, click the back button, and return to the previous page. This category requires you to implement logic in the UI module.

The native input box, Unity’s input box, cannot be customized like native development. It is sufficient for general apps. But if text input is a core requirement for the App, it may be a bit painful, especially when multi-line input. Although there are third-party plug-ins that simulate native input boxes, they are still not perfect.

There may be some native functions that are not so perfect, but they are not used in my App. This depends on the specific product to evaluate whether it is suitable for Unity development.

--

--