Search code examples
androidiphoneobjective-ctitaniumcoronasdk

Already know iphone, Want to target Android, Best approach?


I have been making applications in objective-c for a while now and feel i have a good understanding of it. I have made many applications and started to make a few basic games.

However now i want to target android as well. I recently saw applications such as Titanium and the Corona SDK that let you create applications in one language and deploy to both platforms.

My question is, for anyone experienced with these, would it be better to just learn how to code android applications and then make android and IOS apps separate, or would it be a much better idea to start using one of the development tools listed above?

I am mostly talking about the creation of standard applications, not games.

Also more importantly, if i was to apply for a job developing apps, what would the company look for? someone experienced in each platforms sdk respectively or someone familiar with the titanium or Corona sdk to code and output the applications simultaneously.

I have looked around but could only find info regarding people who have not started either android or iphone development. I am already very familiar with objective C and iphone development.

If anyone could help that would be great!

Thanks for your time!


Solution

  • I would suggest learning the native Java SDK. If you do anything more than simple apps, you will feel constricted and limited by the "write-once" SDKs, as you will want to exploit the special features of each platform.

    In terms of employability, if you know both native iPhone and Android SDKs, I would expect your employability to be much higher than just knowing the cross-platform language. By having a diverse knowledge of "complex" languages (such as Java, and Objective-C), if employers wanted a cross-platform approach, they are likely to recognise your adaptability to the task at hand. Conversely, by only knowing cross-platform development, you are limiting your chance of work - if the client wants to use a more in-depth feature of the platform, which is not available in your cross-platform language.