Using unity for app development

Hi everyone,

I’ve been making a mobile app for the last six months. It’s a yoga app that lets you create custom routines. I used unity and treated the app like a game but it’s very much an app with different screens that you scroll on like you might make in react or swift etc. My thinking was that unity has a good cross platform renderer & let’s you export to android & iOS easily, and at the end of the day it’s still just code running on the device.

But now I was thinking of advertising as freelance app developer. I think the app works well but not sure if I can rightly call myself a mobile developer because it’s not using swift or android studio? I was wondering people’s thoughts and whether you think it’s fine if the app works?

Thanks

Edited by Oliver Marsh on Reason: Initial post
Hey, I'm curious about this since I have played around with both unity and android studio for a bit in the past.

Android studio is a pain (not that unity isn't either but still) so I would prefer to use unity as well even though that hurts my soul. The truth is that using android studio felt just as bad as using unity for me (it didn't feel like I was using something lower level at all). Anyway, one thing that I heard is that google and apple might complain about your app made on unity so that could be a problem. Have you tried to publish your app yet? Let us know how things go for you.

My personal view is that mobile is already a bad environment for programing so you can't really get things done cleanly like you can when programming for desktops in C. That being said, I think going for unity which has more features would be the more cost efficient way, as long as these features wont cause problems with google and apples stores.

Another thing that I remember when I was playing around with mobile dev is that in unity I couldn't find a way to do some very simple stuff like pushing notifications or making a new alarm, as I remember, for such things you would need plugins if available at all. That was a big no for unity in my very limited research. So I guess I would say look for that if it's possible to do all the things you need in unity.

Edited by BernFeth on
All tools on Android will make you look like a total beginner, so just pick one and focus on the usability.

Welcome to the madhouse called Android development
Android firmware developers feel the same way and have a hard time looking professional when using version names like Lollipop, Marshmallow and Nougat during meetings. If a company would make a real effort, their application wouldn't get any higher visibility than the millions of fart jokes thrown out with five minues of development time. Even if you managed to create a quality application, Android is so buggy that if you run LogCat via Andoid Debug Bridge, you might see 1000 critical error messages per second when the phone is doing absolutely nothing of value. Each of those messages would have meant terminating the whole system with a blue-screen to be safe on a PC, but Android just covers it up with a shiny GUI on top. Memory corruption is everywhere. Never use Android for anything remotely safety critical.

Android is meant for children to press every button randomly without breaking
You can't try the phone's VLIW mDSP without chasing process IDs with temporary exploits due to the excessive child locks. Can't even access the whole file system without voiding the warranty by unlocking the bootloader and rooting, because someone might decide to install a competing operating system without the illegal anti-competition ads.

Android Studio is just useless
Android Studio is a buggy toy for Java and Kotlin that can't do anything remotely useful with the phone. You will scroll endless lists of internal error reports before even starting. Might as well use a text editor because all the powerful tools for cleaning up the operating system are in the terminal anyway. Measuring how much power your application really uses requires you to root the system and get rid of all the background bloat to get an accurate reading because programs share antennas, libraries and memory buses in complex ways. Without rooting, you can only change the navigation bar and basic cosmetic changes.

Native development sucks on Android too (on purpose)
Google does everything they can to prevent native development on their platform, to the point where it's hard for firmware developers to get new phone models released on time. Including sabotaging competing open standards like OpenCL (access to GPU and DSP compute) only to present Render Script, which had terrible performance from pretending that integers and floats don't belong to different processor types, resulting in an emulator slower than a naive CPU loop.

Edited by Dawoodoz on
OliverMarsh
Hi everyone,
But now I was thinking of advertising as freelance app developer. I think the app works well but not sure if I can rightly call myself a mobile developer because it’s not using swift or android studio? I was wondering people’s thoughts and whether you think it’s fine if the app works?


Speaking as an experienced iOS/Android developer, it's not really about whether you use Swift/Xcode or Android Studio for development, but your knowledge and experience with the platforms, their SDKs, policies (for better or worse), and all the various "quirks" (for the lack of a better term) that make up mobile apps that really matter.

I haven't used Unity in quite a few years, so I'm not sure what control and visibility you have into the innards of iOS & Android when writing apps for those platforms, or how, for instance, Unity handles updates to the platform SDKs when they come out.

Like Casey said very early in the series, there's nothing inherently wrong with using Unity for game development, but understanding game engines makes you a more powerful Unity developer. I think the same applies here -- even if you commit to using Unity for mobile app development, gaining an understanding of the iOS & Android platforms and how to develop with their SDKs would be valuable.