Top Banner
Mobile Cross Platform Technologies Decision Support 4 Sept 2016
10

Mobile Tech Strategies - 4 Sept 2016 V6

Feb 07, 2017

Download

Documents

Ian Morrison
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Mobile Tech Strategies - 4 Sept 2016 V6

Mobile Cross Platform TechnologiesDecision Support

4 Sept 2016

Page 2: Mobile Tech Strategies - 4 Sept 2016 V6

Executive SummaryGKIM has been developing apps for many customers over the years. We have been presented with many different challenges to build high quality apps, at low cost and in double quick time.

Rising to these challenges has given us much experience in a wide range of mobile app development technologies and methodologies, including native apps, games and cross platform tools.

The choice of development approach depends primarily on the cost v quality trade off. GKIM recommends ionic for speed and ReactNative for quality but ask that publishers do not discount the good option of parallel native development. It might not cost much more whilst quality is generally unsurpassed.

Page 3: Mobile Tech Strategies - 4 Sept 2016 V6

App AnatomyA relatively small percentage of a well designed mobile application is actually OS specific.

The extra cost overhead for each extra native solution should never be be more than 50% and could be a lot less.

Don’t lose sight of this bigger picture. Efficient architecture is as important as the right cross platform choice.

Common Logic

library

Common Assets

Parallel 3rd party

SDK’s

Data store

API CMS Web services

Control Panel

OS Specific GUI code

OS Specific Assets

Write once

Per OS

Page 4: Mobile Tech Strategies - 4 Sept 2016 V6

The Native OptionQualityNative should always give best quality, assuming proper methodologies are followed and design is implemented in parallel.If the app is mission critical then there can be arguments to insist on native.

TimeWe would argue that, native can also always be the fastest option, assuming the availability of engineers to take a parallel development approach.An exception to this would be where an HTML5 solution preexists that can be converted to a web app using tools.

CostCost can be the only compelling argument for a cross platform solution. It will be be higher but not extortionately so, as, cleverly designed, many assets and capabilities will be OS agnostic.• Server side CMS, assets or logic behind an API• Commonly used data or art assets• App specific java script code libraries powering thin clients with identical

logic

Page 5: Mobile Tech Strategies - 4 Sept 2016 V6

Native AppsThanh Nien sought the quality of native and won a gold award because of it.

Dextr, the world’s fastest replacement keyboard, required deep integration with native Android technologies.

Animation quality for our Nestle app would have been very hard to achieve without native.

Social networking apps which use lots of 3rd party SDK’s which may not be available for all cross platform tools should be native.

Page 6: Mobile Tech Strategies - 4 Sept 2016 V6

Games

Cocos is good for 2D games such as these four we built for Rakuten & Viber.

Unity let us extend its 3D graphics technologies with patentable 3D painting capability for this ground breaking game for DripDrops.

Games, especially 3D games, require graphics capabilities not generally supported by Unity and Cocos offer games graphics support.

Unity generally surpasses Cocos now though has an expensive license.

Page 7: Mobile Tech Strategies - 4 Sept 2016 V6

Cross Platform Options

1. OS GUI Replacement Libraries (compiled)Tool Language Comment

ReactNative, backed by Facebook

JS / Markup Latest and bestNative script. ioS stable. Android catching up.

Telerik Native Script

JS / Markup / CSS

More flexible, generally compatible with Angular JE

Xamarin C# Cannot reuse js & css. Requires new language

2. Native webkit based GUI (runtime)

Tool Language Comment

ionic HTML5 + Angular JS

Latest and best w angular design patterns

ReactJS HTML5 + JS Best rendering performance

Sencha HTML5 + JS Requires learning bespoke language

Titanium HTML5 + JS Requires learning bespoke language

• Near native quality• Can co-exist within

native applications

• Lower quality• Requires PhoneGap

to access native OS

Two main classes of Cross Platform development methodologies exist. We discuss examples and pick our favorites.

Page 8: Mobile Tech Strategies - 4 Sept 2016 V6

Cross Platform Development StoriesNon Optimal Successes

ACRA, a large organization with mission critical apps should always be looking to native. It’s quality suffered due to their choice of Sencha.TeleConsult was mistakenly (by another developer) started in Xamarin, costing extra effort to deliver quality.

Resounding SuccessesASN’s marketplace app, a utility, not requiring native quality, is perfect for ionic.H&M’s HTML5 app was a major achievement to get it working on all browsers.

Page 9: Mobile Tech Strategies - 4 Sept 2016 V6

SummaryGames Platforms Native Apps OS GUI Replacement

LibraryWeb Apps

Cost Specialist engineers and Unity license fee required

Parallel engineers required, but not as expensive as only covers part of build

Learning curve applies before economies of cross platform development can be realized

ionic provides lowest cost option for web experienced engineers

Quality Unity can do things even native apps cannot achieve

Generally the best Almost as good as native

Will have flaws in rendering, esp animations and large graphics.

Schedule Games written for these platforms can be ported to mobile very quickly

Effective parallel development can still be fastest

Learning curve moderateTotal dev time may be reduced.

Learning curve moderateTotal dev time may be reduced.

Best in class Unity iOS & Android ReactNative Ionic

Best for Games Mission critical quality, money no object and parallel native developers are available

Apps with high quality graphics expectations and where learning curve is justified.

Utility apps where render quality expectations are not to demanding.

Page 10: Mobile Tech Strategies - 4 Sept 2016 V6

Cost v Quality trade off

Cost

Quality

Best in class platforms compared

Cost reduces over time with learning curve