hybrid app? 3. Myth busting 4. Should I build a hybrid app? 5. Time savers 1. Choosing a hybrid app framework 2. Platform considerations 3. Streamline your workflows 4. Building mobile UI Building hybrid mobile apps with web technologies 3 2015-‐03-‐13
Test Build Build Build Build Write Test Build Write Test Build Mobile Web Hybrid App Native App Building hybrid mobile apps with web technologies 10 2015-‐03-‐13
Hybrid App • Single code base for all platforms • Use your web environment • Even deploy your app as web app • Full access to hardware features such as push, geolocation, camera… • Submission to app stores Shared Code Base Native Container Building hybrid mobile apps with web technologies 11 2015-‐03-‐13
…when UI is your product …when you are consuming cutting edge hardware APIs …when you are doing intense computation …when you have no experience with web technologies Building hybrid mobile apps with web technologies 18 2015-‐03-‐13
time to market is critical …when fast iteration is desired …when you need a proof of concept …when you have a lot of dynamic content Building hybrid mobile apps with web technologies 19 2015-‐03-‐13
the GitHub Repos! 2. Mix and match third-party services as required 1. Push 2. Backend 3. Community plugins 3. You can migrate to a commercial framework later on 1. They’re all Cordova ;) Building hybrid mobile apps with web technologies 30 2015-03-13
easy platform • Hurry to get a developer account • Read into iOS deployment • Double-check with store guidelines • 2.12: Can’t simply bundle a web site • 10.3 Adhere to Human Interface Guidelines • 11.1 In-App-Purchases for additional features • Plan 7 days for review http://appreviewtimes.com • Be prepared for more Building hybrid mobile apps with web technologies 32 2015-03-13
42.6% market share • Outdated WebView component based on WebKit with vendor-‐specific „improvements“ • No built-‐in remote inspection • Since Android 4.4 40.9% market share • Chromium-‐based WebView component with all the bells and whistles • Since Android 5.0 3.3% market share • WebView component can be updated independently Building hybrid mobile apps with web technologies 34 2015-‐03-‐13
Chromium • Works with Android 4.x • Most Cordova plugins are compatible • Tooling for migration available • Adds ca. 20MB per architecture • Pays off a hundred times! 2015-‐03-‐13 Building hybrid mobile apps with web technologies 35 2015-‐03-‐13
deployment ASAP 2. On Android, make your life a lot easier by using CrossWalk 3. Don’t go crazy with the plugins Building hybrid mobile apps with web technologies 37 2015-03-13
Web App Build Xcode Project IPA Android Studio Project APK Visual Studio Project XAP ... Building hybrid mobile apps with web technologies 40 2015-03-13
practice project structure • Integrated build system • Plenty of generators available, for Grunt AND Gulp 2015-03-13 Building hybrid mobile apps with web technologies 42
Android devices are highly limited in RAM and GPU • To get a feeling for current performance you have to test on an actual device • You can connect an empty Cordova container to your local development server, live-reload changes as they happen • Use the remote inspector for full insights from device and simulator Building hybrid mobile apps with web technologies 43 2015-03-13
test on a real device 3. Also 1. Version control Cordova assets 2. Use Genymotion for fast Android emulation Building hybrid mobile apps with web technologies 44 2015-03-13
try to imitate native UI, rather create your own design language • Native-like UI paradigms • Navigation Bar, Tab Bar, Navigation History, View Transitions • Modals, Action Sheets, Popovers • Pull-to-refresh • User Input Controls • Native-like performance • Native-inspired Scroll Views, View Caching • Adapt effects according to device performance Building hybrid mobile apps with web technologies 47 2015-03-13
libraries • ngCordova • Programming courses • Evolving into an ecosystem • Ionic platform announced in 02/2015 2015-03-13 Building hybrid mobile apps with web technologies 54
starred Github repos • 57,000 posts in Ionic Forum • 3,700 Stackoverflow Posts • World-wide user groups • Forked by Appgyver • SupersonicJS Building hybrid mobile apps with web technologies 55 2015-03-13
is recommended 2. If you really, really want to start from scratch 1. Reduce DOM size, render only what‘s on screen 2. Minimize DOM manipulation 3. Cache views 4. Selectively promote layers to GPU 5. Provide immediate interaction feedback, use Fastclick 6. Adapt to device performance 7. Performance comes before beauty Building hybrid mobile apps with web technologies 56 2015-03-13