Cross Platform Mobile Development worthwile or not? [closed]
开发者_JAVA技巧
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this questionRecently I came across Cross Platforms for mobile app development, to name few:
- RhoMobile,
- Appcelerator,
- WidgetPad,
- PhoneGap,
- MoSync and many more....
I am confused whether it's really worthwhile to devote time to learn these. There are countless advantages one can think of developing app which can run on all major platforms but what if our app requires extensive usage of API's of that particular OS. On top of that, Android, iOS release new versions of OS, say, almost every year and hence to cope up with that the cross platform environment have to be updated and thus an updated API to develop!!
Consider a case, we are using Facebook API in our app. Now if we use a cross platform mobile development environment then wouldn't it be like we are using one api to access our main platform i.e. Android or iOS and then sub-level api to use Facebook? If we carry on these sub-level usage then isn't this technically getting hardware resource hungry and time consuming. Also that, the flexibility of using third party API's might also reduce.
I am also excited about cross platform development but just wandering whether is it right time to invest time as these cross platforms too are on their initial development BETA phase.
To answer the 'headline' of your question, "Cross Platform Mobile Development worthwile or not?", it depends on the complexity of your application, but in general terms I think the answer is 'YES'. If you have need to create the same application for Android, iPhone, Windows Phone 7 and BlackBerry this will require creating the same application four times over! Also, the languages and APIs for each are very different, it is unlikely that you will find a developer that can program for all four.
Regarding the frameworks you listed, there is already a pretty good overview of the differences between three of them here:
Comparison between Corona, Phonegap, Titanium
You are right, most are in Beta, or some early form. Personally, I would recommend learning HTML5 / JavaScript / CSS, typically these are the languages that are being used to deliver cross-platform mobile applications. If you have a good understanding of the underlying technologies, you can transfer your skills from one cross-platform mobile development framework to another.
More recently I've created an open source project http://propertycross.com that helps select a cross-platform mobile framework by showing the same application implemented with Sencha, Titanium, Xamarin and more ...
It totally depends on your application requirements. Please note that these cross platform mobile app development frameworks does not support all phone features. They mainly supports features like - GPS, Camera, Contacts, Storage, Accelerometer, Compass, SMS, Email etc.
They does not support complex features like NFC, SIM Card Info, hardware access etc.
Out of all the mentioned tools, I will recommend PhoneGap tool.
精彩评论