Steven Sinofsky writes that, "In discussions with entrepreneurs I have had, it is clear that the approach to cross-platform is shifting from 'obviously we will do multiple platforms' to thinking about which platform comes first, second or third and how many to do."
Application developers today seeking to garner large fan bases target at least iOS and Android. It also depends on the nature of the application. For a communication app, for example, you would want to create a solution that is adaptable on various platforms so people can use it on the go, wherever they go, however they go.
There are two goals of an application: acquire as many customers as possible or deliver highest quality engagement within a target market. When a majority of your target audience are using the same platform, the choice for platform becomes easy. But when you're catering to a huge audience which may be using iPhone, Android, Windows Phone and others, there's a need to design for multiple platforms. In this blog post, we'll highlight the benefits and disadvantages of cross-platform apps.
Benefits of Developing for Multiple Platforms:
As is obvious, the more platforms you cover, the more people you'll be able to reach. With Apple's iOS and Google's Android competing for top positions worldwide, the number of smartphone users for these systems is increasing day by day. Developing an application that runs on both iPhone and Android gives you the added advantage of tapping into greater market potential.
When you have a larger fan base, marketing becomes easier in the sense that you don't have to create niche messages to cater to a specific set of people. You have the liberty of marketing the application on various media and through generalised messages for the masses.
One Instead of Many
It is easier to maintain and deploy changes when you're developing one application that runs across all platforms. Updates would immediately get synced across all devices and platforms. Further, with tools like Appcelerator and PhoneGap, it becomes easy to handle one team of developers working on a single multi-platform app than several teams working on different platforms.
Uniform Look and Feel
The overall design and feel of the app can be maintained across various platforms if there's a single code running on all. When you're designing different apps, it can be hard to sync two different developers or teams of different levels of expertise.
Use of Known Technologies
When you're using tools like Appcelerator, you can easily code in HTML5 and convert for different mobile platforms. This means you're using resources you already know about and converting them for deployment across different platforms. This leads us to our next point...
HTML5 vs. Mobile Developers
Reduced Development Costs
All this means you have reduced development costs when making apps for multiple platforms. But before you make a decision, read on for the disadvantages...
Disadvantages of Developing for Multiple Platforms:
Different Tools and Languages
Although there are many tools like Unity, Ramp, PhoneGap, Grapple, Open Plug, Rhomobile, Titanium that make the task easy for you, if you're custom designing your application, it can be hard to fight off the differences in tools and languages of each platform's API.
iPhone and Android alone have significantly diverse screen layouts. Designing one app that fits on both these and more platforms can be quite a task. For a detailed review of the disparities in UIs on devices, read Josh Clark's article 'Designing for Touch".
It's not just the UI that is different. When it comes to integrating the app with the local settings, preferences and notifications apps, you can be faced with serious trouble trying to juggle multiple platforms. Even storage options are diversified so you may be looking at cloud options and integration of third party cloud services with your app.
Trying to Please Everyone
Heard of Aesop's fable about the man who tried to please everyone? According to Christina Warren, you could be faced with the same dilemma when developing an app for multiple platforms. She says, "a good cross-platform application looks at home on whatever platform it is used on. A bad cross-platform tries to look identical everywhere." So it's one thing being the same, and another being similar. You can't be the same on every platform, but have to adapt to each platform's unique styles - a functionality you lose if you're creating one app for all.
Loss of Flexibility
Each platform provides its own flexibilities - that's why they're there on the market. When you're designing a cross-platform app, you're forced to look at the commonalities. This puts you at a disadvantage of losing the flexibility that each platform provides.
While applications are getting diverse and user bases are expanding, there is no one clear platform of choice. During this tug of war, application developers are faced with the debate of whether they should be designing cross-platform apps or multiple apps for different platforms. Depending on the goals and features of your app, you could either benefit or lose from cross-platform mobile apps. We hope this list will help you make a more informed decision.