OK now I'm confused. I read that unity uses mono to compile Android and iOS apps. Then I read that mono is a part of Xamarin. Am I wrong if I say that unity uses Xamarin?
Next, let's say that unity doesn't use Xamarin. Then how does it compile apps for Android and iOS? I realize it asked for android sdk when compiling for android. Does this mean that it compiles to android natively? Using the Android sdk?
If yes, how do I use C# and the Android sdk to compile the apps to .apk format myself? (Without using Xamarin, make the apps in C# and compile it to Android by myself)??
Unity is using a very old variant of Mono as foundation. The Mono Project is a separate effort from Xamarin. Mono is an open source .NET runtime. Xamarin.iOS and Xamarin.Android is a proprietary runtime for C# on iOS and Android devices respectively. Xamarin Studio is purely the IDE and not necessary for development at all. It sure makes it a lot more convenient though.
The Xamarin.Android compiler will create an .apk for you that will either include or link the mono runtime for Android. You can set the options on the command line or in your IDE. Unity is just a different "IDE" (front end) and uses similar compiler and arguments as Xamarin Studio or Visual Studio.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With