Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Suggestions for entering mobile development -- pure iPhone SDK, Android SDK, Mono Touch or Titanium?

I am entering mobile development. I have been working primarily in .NET since 1.0 came out in beta. Before that, I was mostly a C++ and Delphi guy and still dabble in C++ from time to time. I do web apps quite a bit so I am reasonably proficient with Javascript, JQuery and CSS. I have also done a few Java applications. I started web programming with CGI and live mostly in the ASP.NET MVC world these days.

I am trying to decide on which platform/OS and tool to select. I am concerned with the size of the market available for my applications as well as the marketibility of the skills I will pick up.

The apps I have in mind would work on both phones and pads. Some aspects of what I have in mind will play better on the bigger screens that will be available on pads.

Here are the options I am considering:

  1. Apple iPhone/iPad using pure Apple SDK (Objective-C)
  2. Apple iPhone/iPad using Mono Touch (C#)
  3. Android using pure Android SDK (Java)
  4. Multiple platforms using something like Titanium to generate native apps from web technologies (HTML, CSS and Javascript)
  5. Multiple platforms using HTML5 web applications that run in the browser (HTML, CSS and Javascript).

Which option would you choose? Do you have a different suggestion? What are the pros and cons?

like image 803
Tom Cabanski Avatar asked Apr 16 '10 13:04

Tom Cabanski


People also ask

Where is SDK File in Android Studio?

To open the SDK Manager from Android Studio, click Tools > SDK Manager or click SDK Manager in the toolbar. If you're not using Android Studio, you can download tools using the sdkmanager command-line tool.

Where is Android SDK located in Windows?

by default, the "Android Studio IDE" will be installed in " C:\Program Files\Android\Android Studio ", and the "Android SDK" in " c:\Users\username\AppData\Local\Android\Sdk ".


4 Answers

I think you have cover almost all options, let me share my opinion on each.

  1. It is worth to start with highest priority as its Buzz now a days.
  2. According to iPhone OS 4 developers agreement section 3.3.1, apple will only allow apps developed in C/C++ and JAVA script. I would not suggest you to put your efforts in C#.
  3. Its worth and if you have good grip over core JAVA then, you can be productive in few days. At this stage Android might not have much market share but My personal opinion is ANDROID IS FUTURE.
  4. My point number 2 effect Titanium as well but according to their latest tweet, they have approval from Apple. I am not aware with ground reality.
  5. Same as point number 2

It is good, if you start to concentrate on native iPhone and Android programming framework at this stage. Still if you have time you can invest on Blackberry RIM as well, as you have JAVA background.

Welcome to smartphone dev. :)

Thanks,

Rajnikant

like image 187
Rajnikant Avatar answered Nov 12 '22 01:11

Rajnikant


If you're targeting the iPhone/iPad, the changes to the iPhone SDK agreement that are being ushered in with iPhone OS 4.0 and the new SDK state that you are only allowed to submit apps to the App Store that have been written in C/C++/Objective-C, or Javascript if its a webapp.

You need to take this into consideration, because compatibility layers, cross-compilers, source translators all look like they're going to be prohibited under the new agreement, which includes things like MonoTouch, Adobe's Flash CS5, Phonegap, etc.

like image 27
Jasarien Avatar answered Nov 12 '22 01:11

Jasarien


Cross platform frameworks you should look at:

PhoneGap QuickConnet

like image 45
Fred Grott Avatar answered Nov 12 '22 01:11

Fred Grott


You may be best off sticking to web apps if you're looking to make them cross-platform; the major smartphone OSs—iPhone OS, Android, and WebOS, with the Blackberry OS rumored to be next—all use the Webkit renderer, and you'll have an easier time making things that don't feel alien to each platform than if you're using one of the frameworks for writing ostensibly cross-platform code. This is the particularly the case when you take into account Apple's recent changes to their SDK license agreement: tools like MonoTouch and PhoneGap may no longer be usable for getting things into their App Store.

like image 43
Noah Witherspoon Avatar answered Nov 12 '22 00:11

Noah Witherspoon