Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Starting Android Development: Native or cross-platform?

I am an experienced professional programmer who wants to delve into Android programming. I also wish to investigate cross-platform programming using tools like PhoneGap or Titanium.

However, I am a bit in doubt of which learning strategy is best.

One approach is to get a good feeling of the Android environment and later on explore the possibilities of the cross-platform tools.

Another approach is to jump start using say Titanium (which to me looks like the better option of the two mentioned) and then after a while look into the underlying Android building blocks. The reason why this approach seems worth considering is that although I have earned my living on programming for 20 years, I have no experience whatsoever with Java. And the feeling of getting something done has always been encouraging to me.

What do you think? Does option 2 make sense, or would it be more sensible to get an understanding of the Android environment first?

Thanks in advance, Martin

like image 926
marlar Avatar asked Oct 12 '22 14:10

marlar


2 Answers

I think that all depends on what will you develop: If you want to develop simple interfaces (parsing XML/Json/...) with some forms and nice transitional effects, then Titanium is yours.

However, the most advanced functionalities aim the iOS platform. For example, the augmented reality module or the push notification are not supported for Android.

On the other hand, if you want to develop advanced interfaces (Games for example), then you have no choice: Android SDK is the best way (you can use Flash for Android but it doesn't support very first Android OS versions).

In all cases, you have to understand how the Android platform works.

like image 156
Zakaria Avatar answered Nov 02 '22 23:11

Zakaria


I had a similar decision to make, although I am not an experienced programmer like you with vast experience , I had no java knowledge and I needed to write an android app for a project in grad school ,and i'd tend to agree with you on which is the better option , although reading the dev guide and grasping the basics will be a must. And like Zakaria says , it also depends on what you plan to develop.

in my case I learnt basic java first , then used the SDK for my project. Its not that big a learning curve actually , I did not find too many problems with the API.

like image 20
Gokul Avatar answered Nov 03 '22 00:11

Gokul