Xamarin vs Titanium Appcelerator?

Farhan Shah picture Farhan Shah · Apr 8, 2015 · Viewed 12.4k times · Source

I developed a Native Android App, now the requirement is that the developed app needs to be in a cross platform like Xamarin or Titanium Appcelerator, now please some Experts Software Engineers Suggest me that which cross platform should I choose and why? If I choose Xamarin then what are the advantages and disadvantages of Xamarin and if I choose Titanium Appcelerator then what are the advantages and disadvantages of titanium?? Any help will be highly appreciated.

Answer

Andreas Reiff picture Andreas Reiff · Apr 17, 2015

Some factors where the 2 are different (or not).

Price

By now, both cost money. Xamarin has a useless (only very small apps) free version, paid versions start at 25$/mo. https://store.xamarin.com/

Titanium Studio used to be free, but they unfortunately changd it few weeks ago. Existing free users are moved to a free lifetime indie license (which is nice!), new ones have to pay, minimum of 39$/mo. http://www.appcelerator.com/pricing/ Also, the most recent version of Titanium is invitation-only and though I got an invitation to register for invitation, I am still waiting for weeks now to be accepted.

So Xamarin has a slight edge here - by now - though you also need to see what you want to do. Indie edition is ok to get everything "normal" done, though it lacks the Visual Studio integration.

Platforms supported

Xamarin supports Android and iOS, WinPhone is supported since .net runs on WP.

Titanium supports Android, iOS, BlackBerry and Web, WinPhone is said to be supported but does not work at all. https://developer.appcelerator.com/question/181588/how-to-update-to-preview-to-do-windows-development-the-requested-sdk-version-does-not-have-an-assigned-commands-handler

Titanium Studio with Windows Phone Plugin: Titanium SDK does not support the Windows platform This - should - work with the new version 4, which is rumored to be available, but I have not seen it (though I tried).

So, if you want WinPhone, use Xamarin, if you want BlackBerry, use Appcelerator.

IDE

Xamarin has Visual Studio integration (Business edition or higher), which is great. Visual Studio is just one of the best, perhaps the best, IDEs out there. Xamarin Studio is so so.

Titanium Studio is so so, similar to Xamarin Studio.

Installation and Ease of Use

Xamarin has an all-in-one installer that takes some time, but then you can start. It just works. Xamarin has very frequent updates (every few weeks), which it sometimes needs, since certain features are broken is certain versions.

Getting Titanium Studio to work is often a hassle. I had to (this is not documented!) use Java 1.6 32Bit, which can be difficult since normally one updates his Java. Officiall, Java 1.8 is supported, but this just did not work for me. Titanium Studio is way more difficult to set up. Titanium has infrequent udpates, less than once a month.

Language

Xamarin is C#. You get a great, typed language, that scales from small to very complex applications, and has great language constructs for complex data types and scenarios

Titanium is JS. You get a good dynamic language that is very flexible, and is mainly for small, flexible applications.

You can create good programs in both languages, it is a little more difficult in Javascript.

Both compile to native.

You can use both the many js (Titanium) and .net (Xamarin) libraries and frameworks out there.

Cross-Platform

Xamarin introduced Xamarin.Forms last year to provide cross-platform GUI. It is working, though a lot still is missing, like orientation needs to be implemented manually.

Using cross-platform hardware also is not easy. There are addons that you really should check out like xlabs https://github.com/XLabs/Xamarin-Forms-Labs though I have found not a single feature there to be working (of the ones I tried). Bug request were handled quickly though so I would assume this product to mature and eventually be very very helpful to allow having 1 code base for all platforms with very very little platform dependent code (just the DI part).

Titanium I have not really used much for this so I cannot really comment.

The Rest

Communities are large for both products.

Appcelerator has a free university program (videos to watch/download). Xamarin has an expensive university program, but that includes tutoring and small web classes. There also are free videos.

Appcelerator seems to need to make money by now. Xamarin always needed to make money, they have some backing by Microsoft by now, which is helpful of course.

Most important is probably your language background. it is not the most important, since you will still need to learn a lot about mobile and each platform as well.

Also, check out the competition: PhonGap/Cordova, and some new, smaller players, some C# and some C++ based.

Xamarin 2.0 vs Appcelerator Titanium vs PhoneGap

Comparison between Corona, Phonegap, Titanium

In your specific case: Java and C# are very very similar, much more than Java and Javascript.

You can get a free trial of the business version and also extend it a few times if you directly contact customer support and have good reasons - so I was told.