Introduction:
Smartphones are a recent phenomenon and weren't always this popular. Prior to the Android vs. iPhone vs. WindowsPhone debate,and as a developer we can't imagine which mobile platform will be hero in future ,and so mobile application developer it is best practices to know about other mobile platforms (android,iphone,windowsphone,blackberry..etc)
However if you have been developing android apps and are interested in building apps for windows phone and also vice versa .this post is for you.And so lets start comparison between android vs windows phone development
However if you have been developing android apps and are interested in building apps for windows phone and also vice versa .this post is for you.And so lets start comparison between android vs windows phone development
1.Development Tools:
Android: Android app development is done mostly in Java (in a few cases with C or C++),Declarative screen design in Android is represented in an XML file which gets injected into the corresponding activity code at run timeWindows Phone: Windows phone apps support C++, C#, Microsoft Visual Basic .NET, and JavaScript.Declarative screen design in Windows Phone is represented in Extensible Application Markup Language (XAML).. XAML is a declarative language, with each XML node representing a Windows Runtime object.
The first question that concerns every developer during his first steps is “how easy is it to start developping on a platform”. Assuming that you already are a windows user, things are quite easy. You have to download the SDK and the Visual Studio Express (a striped down version of the standard Visual Studio) and you are ready to start. Of course the same stands for Android too, you download eclipse, the eclipse plugin and the Android SDK and again, you are set to go. Both platforms have rich documentation but Android has an advantage to online communities like StackOverflow and mailing lists. The problems begins when you are a linux or a mac user like myself. Eclipse and the Android SDK run on all operating systems and versions, while Visual Studio runs only on Windows Vista and later. The solution of using a virtual machine is rather disappointing.
Android
|
Windows Phone
| |
Company/ Developer
|
Google
|
Microsoft
|
Programmed in
|
Mostly Java (in a few cases with C or C++)
|
C#, VB.NET,Java Script
(C++ is not supported officially) |
RunTime OS
|
Android
|
Windows Phone
|
Initial release
|
September 23, 2008
|
October 21, 2010
|
Supported platforms
|
ARM,
|
ARM,x86
|
IDE
|
Eclipse,IntelliJ,NetBeans
|
VisualStudio
|
Default user interface
|
Graphical (Multi-touch)
|
Graphical (Metro UI)
|
SDK
|
Android SDK
|
Windows Phone SDK
|
Source model
|
Open source software
|
Closed-source
|
Tools
|
Android Developers Tools(ADT) plugin for eclipse
|
Visual Studio Templates and Blend for Visual Studio.
|
Development OS
| Windows,Mac, and Linux Flavors | Best to work with Windows |
Language support
|
Multiple language support
|
Multiple language support
|
2.Layout Controls:
Layout Controls | |
Windows Phone 7 | Android Equivalent |
Canvas | AbsoluteLayout |
Grid | GridView |
ScrollView | ScrollView |
StackPanel | LinearLayout |
3.Basic Controls:
Basic Controls | |
Windows Phone 7 | Android Equivalent |
TextBlock | TextView |
TextBox | EditText |
Button | Button |
CheckBox | CheckBox |
RadioButton | RadioButton |
Image | ImageView |
ProgressBar | ProgressBar |
ListBox | ListView |
Map | MapView |
WebBrowser | WebView |
4.UI Development:
You have your tools set up, now you must start the development. Both platforms are using XML to construct the UI of an application. In fact the similarities are quite suspicious.
WindowsPhone: Windows Phone offers a great drag and drop tool and the UI creation is a straight-forward procedure.
Android: Things are a little bit more complicated on Android. There is a basic drag and drop tool, but it doesn’t do a lot of things (it can’t really), designing the UI for so many different types of Android screen sizes and shapes is -despite the tools and the good documentation- more complicated than having to support a limited and documented set of screens.
5.UI Guidelines:
Another important issue is the design guideline.
WindowsPhone: Microsoft came with the Metro UI. I find it so attractive, and many of my friends who work on the design industry find it splendid, so I have to trust their taste.
For more info you may read UI Design Guidelines for Windows Phone 8
For more info you may read UI Design Guidelines for Windows Phone 8
Android: What concerns me most is that the design guidelines for Android are constantly changing (can you find anything similar between Android 1 and the Holo theme? I can’t!), you have to redesign your app often (this can be a good thing too) but I believe the Metro UI has come to stay and we won’t see any dramatic changes to the UI or the UX of the Windows Phone applications in the near future.
6.Which programming language is best?
Google made the decision to use Java as the programming language of Android to attract many Java developers. Microsoft did exactly the same, only they used C#. Cloning the good elements and coming to fix Java’s weaknesses, offering extra functionality, C# is a more modern programming language and this is a point for Windows Phone. Do not forget the power of the jars though, as the majority of Java’s extra libraries are very likely to work on Android and this is a big issue if you just think of the Apache Commons’ set of libraries. (I do not want to go deeper into programming language performance war since, let’s face it, testing execution speed of these languages on a 600mhz mobile device has little value). Memory consumption on the other side is a big thing, but Garbage Collectors on both languages do a very good job and it’s up to you to use the phone’s memory conservatively.
7.Emulator:
WindowsPhone: Speaking of emulators, Windows Phones have a big advantage here. Strangely enough (!), the Android emulator’s speed hasn’t improved over the years and is still tremendously slow. (Yes, years have passed since version 1). Windows Phone emulator works like a charm and starts at the speed of light compared to the Android emulator.
Android: Strangely enough (again) eclipse’s Android plugin and toolset is very buggy and lacks of many features. Also, many developers state that Visual Studio is a much more stable and mature IDE than eclipse, but I’m afraid I’m not in a position to confirm that :)
8.Development Cost:
And here comes another thing: cost. Not counting the cost of the operating system, since you have already paid for it
WindowsPhone: Windows Phone development has extra costs. if you want to publish an application or deploy your app on your device ,You have to pay for the full version of Visual Studio and you have to pay an annual fee (99$) which is now reduce to (19$) only due to summer offer .Good news are that if you are a student, some of these costs are withdrawn.
Android: Android on the other hand, is significantly cheaper. You only need to pay 25$ once, and that is if you want to publish your apps on the Play store. Oh, I forgot, Android headsets are also cheaper, if you want to buy a real device!
9.Tablets:
WindowsPhone: Windows tablet does not run Windows Phone OS but it runs under windowsRT. windowsRT is a "light" version of Windows 8 that is dedicated for tablets. It does not run .exe files but only Windows store applications. But there is the Surface Pro which runs Windows 8 and .exe files. I should mention that 80% of Windows phone APIs are from windows8 APIs. So you can easily share your code between Windows Phone and Windows 8.
Note: Now WindowsPhone store 8.1 Development environment support more in common—a much larger API set, a similar app model and life cycle, a shared toolset, a common UI framework—Windows Phone and Windows Store app developer platforms truly have become one, single development platform.
Android: Android runs on smartphones, also on tablets. From the 3.0 version, Google added a bunch of APIs for larger screens so that apps will be more funny on tablet the mains components added were ActionBar and Fragments.
10.App Store Submission Process:
WindowsPhone: In order to publish windowsphone applications,There are two kinds of accounts: a developer account which will cost you 49$ and an Enterprise account which will cost you 99$(Present 19$ only due to summer special and it may be forever).The validation process will be very strict and take you about maximum 5 days and if your app is rejected, you will get an error report about what you have to change in your app.it don't have malwares in the Windows Phone Marketplace. It's a trusted store!
For more info you may read How to submit windows phone 8 app to windows phone marketplace
Android: In order to publish Android applications, you need to have a Google Play account,that will cost you 25 USD,you have to pass through a validation process which takes only 15 to 30 minutes.Google play has a lot of malwares, that's because of the very fast validation process and the huge number of Android developers.
Note: This post is does not pointing to which platform is winner,but as a developer it is best practices to know about both platform's environment before going to develop apps.You can still discuss with me in the "Comments " section below.
Note: This post is does not pointing to which platform is winner,but as a developer it is best practices to know about both platform's environment before going to develop apps.You can still discuss with me in the "Comments " section below.
Hi,
ReplyDeleteThings have changed now, it's $19 all the way to get Windows Phone and Windows Store access. The summer offer has been extended for like ... forever :)
And the Store certification now takes several hours. Manual certification might occur afterwards.
Thanks for the article, that's a nice comparison.
Thanks for nice comment :)
ReplyDeleteGreat ground work subbu.. I like your passion about work
ReplyDeleteThanks for your comment :)
DeleteMaison à vendre à casablanca
ReplyDeleteIn this article you described awesome facts and information which really every developer have to face and follow. I thing you can follow and get some more helpful tips and tricks in android mobile apps development related from here... Android Development.
ReplyDeleteWe offer cross platform mobile solutions including SIP dialer to Windows Application Development Company worldwide clients. We specialize in the development of business apps for iOS, Android, Windows, and SmartPhones.
ReplyDeleteThis blog described about Windows Phone Development vs Android Development Tutorial for Beginners which is not good for beginners also for experience. From here you can find out the knowledge about apps for windows phone and android apps.
ReplyDeleteAndroid vs Windows applications comparison means these both have specialties in their own field. However, users mostly like to use Android applications because these are easy to used and understandable. Now android application development has big share in mobile market.
ReplyDeletemy feelings about Android's elegance, it absolutely is a decent mobile SDK. There's a lot of functionality in there, and an awful lot of libraries and sample code that you can draw on to avoid re-inventing the wheel in your applications Gadgets in Pakistan.
ReplyDeleteWindows Phone Development vs Android Development Tutorial for Beginners - Nice post.
ReplyDeleteKeep it up..
Incredible points. Outstanding arguments.Keep up the great work. To know more about Android Development feel free to visit my blog also.
ReplyDeleteGood Comparsion subbu. keep it up
ReplyDeleteAndroid Application Development in chennai
Nexevo Technologies is the one of the Best Web Design Agency in Bangalore.We Have provide the e commerce website designing,development,and SEO services in Bangalore..Visit My Website:Web Design Agency Bangalore | Website Development Company Bangalore
ReplyDeleteThank you so much for sharing this one Andoird App such a Innovative concept for work in this field, Thanks again all Kind of peaceful info,Love it- Android App Development
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteIts the Great article...This post found the lot of information about Windows Phone Development vs Android Development services...am got your information...keep sharing useful information thank you...SEO Company in Bangalore | SEO Services in Bangalore
ReplyDeleteExcellent Blog...Really very nice article....Thanks for sharing...
ReplyDeleteAndroid Development
Really helpful information in this blog. Thanks for sharing excellent information. Thank you so much for sharing this one Android App such an Innovative concept for work in this field. Visit this website More info.
ReplyDeleteWebnet android application development administrations are customized to your exceptional business needs.
ReplyDeleteGreat blog. Very educational and very informative. This blog is helped me a lot. Thank you for sharing. This really worth sharing and reading also. Web Design miami
ReplyDeleteHi,this is excellent information..we provide by very easy learning good information.
ReplyDeleteApp Development Tutorial
Really helpful information in this blog. Thanks for sharing excellent information. Thank you so much for sharing this one Android App Development such an Innovative concept for work in this field.
ReplyDeleteReally Subbu? Copying an existing blogpost? Refer this post from 3 years ago...
ReplyDeletehttp://blog.bugsense.com/post/26918984231/android-vs-windows-phone-from-a-developers-scope
Hello
ReplyDeleteYou have discussed very detailed info about the points on windows phone and android app development. This info can be used by every android app developers for their future app development. Keep sharing !
Hi Subbu, you have described awesome facts and information. You can also follow and get some more helpful tips and tricks on mobile app development related queries here.
ReplyDeleteAppStudioz Text
Wow! these are wonderful tips. Thanks for sharing them with us. Please visit app development in Thailand
ReplyDeleteNice Blog you have post this blog is most informative and this is very useful for us. Thanks for sharing this tutorial.
ReplyDeleteAndroid app development Company
Thanks a lot for sharing.. Really very helpful and easy to understand. Great tutorial. So happy to see a beginners tutorial that actual starts at the beginning! Hope to see a lot more!
ReplyDeleteMake Windows Phone Apps
Good article.
ReplyDeleteAndroid programming Mobile Application Development
Yeah!! Nowadays many young entrepreneurs have come up with new and innovative ideas to build windows and android apps. The article was very informative, keep sharing
ReplyDeleteWeb Design Company Bangalore | Web Development Company Bangalore
Hello my friend! I would like to tell you that this write-up is awesome, great written and include
ReplyDeletealmost all important info. I would like to see a lot more articles like this.
android app development agency
Very Informative! This blog is great source of information which is very useful for me. Thank you very much for sharing this!
ReplyDeleteExcellent blog..Thanks for your ideas. website designing company india
Thanks to post this blog really it is nice information.. i need ios app development information..!! hope you share soon..@ thanks
ReplyDeleteIt was such a valuable information. Thank you for sharing.
ReplyDeleteBitcoin for Web Design | Pay Bitcoin for Web Design | companies that accept bitcoin for web design
Ecosmob is one of the best Android App Development Company in India providing innovative Android Application Development services.
ReplyDeleteAndroid Application Development
Great article...This post provide lots of information ...keep sharing useful information..
ReplyDeleteWebsite Designing Company in Delhi | Website Designing Company in Rohini | Website Designing Company in Kirti Nagar
ReplyDeleteThanks for posting useful information.You have provided an nice article, Thank you very much for this one. And i hope this will be useful for many people.. and i am waiting for your next post keep on updating these kinds of knowledgeable things...Really it was an awesome article...very interesting to read..
please sharing like this information......
Android training in chennai
Ios training in chennai
Well said, the mobile apps are getting simpler and effective with the Mobile application development tools we compare to windows app. You can create best performing android application with ease.
ReplyDeleteRefer this website:
Android Training in Chennai
Thank you for sharing such an informative news with us. Keep on sharing Contents like this. You can also share this content on various sites like the Automation Associates LLC site.
ReplyDeleteGreat post, and I am glad that you shared this useful info with us. This blog is very helpful. You can also share this Information on many other sites for example like Free Samples, a clean business site like OS Business Opportunities swiftly followed by Jfissures and Asaimjapan and also the Johny Adams site.
ReplyDeleteExcellent and amazing post. Informative. Thanks for sharing this most excellent information. You can share this information on other platforms such as, Wordpress the most useful Blogspot site followed by the famous Tumblr and also in Medium lastly in the Livejournal site.
ReplyDeleteI truly like to reading your post. Thank you so much for taking the time to share such a nice information. I'll definitely add this great post in my article section. Cloud Computing Training in Chennai | Android Training in Chennai | Software Testing Training in Chennai
ReplyDeleteWonderful post. Android development is very important for startups to build mobile app for their business. Learn big data from us.
ReplyDeleteonline aptitude training | learn core java online | MBA in marketing management | MBA in event management | Big data analytics training | Big data for beginners | annamalai university distance education mba | Analytics courses
Marvelous article. All Apps technology development by the Android software it's very importance for apps development.In technologies really useful startups and IT MNC's company.It has to build developed by mobile apps application.Selenium Training in Chennai | Software Testing Training in Chennai | Selenium Automation Testing Tool Training in Chennai
ReplyDeleteWell said, the mobile apps are getting simpler and effective with the Mobile application development tools. Thanks for sharing. Anybody want to learn basic Android Developement. Refer
ReplyDeleteAndroid Training in Chennai
You are doing a great job. You inspire me to write for other. Thank you very much. I would like to appreciate your work for good accuracy and got informative knowledge from here.
ReplyDeleteAndroid Training in Bangalore
Hi,
ReplyDeleteNice guideline, good job.
Suraj Yadav
Android Software Developer
Nice blog.. Thanks for sharing informative blog.. I just want to say that all the information you have given here is awesome...great and nice blog thanks sharing.Android app development, Android app development for hire
ReplyDeleteHats off to your presence of mind..I really enjoyed reading your blog. I really appreciate your information which you shared with us.
ReplyDeleteAndroid Online Training
Nice blog.. Thanks for sharing informative blog.. I just want to say that all the information you have given here is awesome...great and nice blog thanks sharing
ReplyDeleteAndroid Training in Chennai
Python Online Training
The post is exceptionally useful. It is a joy understanding it. I have also bookmarked you for checking out new posts. You can likewise share this significant substance on different platforms, for example, Blogspot, the popular Wordpress website, the inventive Tumblr web page and furthermore the sites like Medium and the well known Live Journal website.
ReplyDeleteThis is really a nice article. Informative one. So much to learned about from what you have written.
ReplyDeleteHire Android Developer
This is really very nice article thanks for sharing Android Online Training Bangalore
ReplyDeleteFirst is to thank you for all this informative posts you give us for free; i bet all of us are happy.
ReplyDeleteSuch a great idea of yours! You have been a big help for me. Thanks a lot. more post for interesting topic. Great!
White Label Website Builder
Your blog has a very great, thanks for sharing. Android Application Development Company Bangalore | Android Mobile Apps Development Company Bangalore
ReplyDeletevery informative blog.
ReplyDeleteAndroid training institute in velachery
I am working in a Android App Development Company in India
ReplyDeleteGreat Share..!! Nie article keep sharing.
Nice post, Android Online Training
ReplyDeleteYour website content nice nice and interesting to observe.
ReplyDeletejobbörse Neunkirchen
The website is looking bit flashy and it catches the visitors eyes. A design is pretty simple .
ReplyDeleteoffice 2016 professional plus 64 bit
Thanks for sharing such a nice post regards...
ReplyDeleteiPhone app development perth | local seo australia
Cool stuff you have got and you keep update all of us.
ReplyDeleteInformatica Training in Chennai
Python Training in Chennai
AngularJS Training in Chennai
Thanks for sharing Valuable Information on Android Online Training
ReplyDeleteI appreciate your efforts and i always like to learn more and more ... thanks a lot for nice efforts
ReplyDeletemobile website builder