Hybrid App Landscape

Total Page:16

File Type:pdf, Size:1020Kb

Hybrid App Landscape Hybrid App Landscape Ruben Smeets ES&S 03/02/2016 Agenda • Why cross-platform mobile app development? • What are hybrid apps? • Hybrid app early and current struggles • Hybrid is bigger than Cordova/Phonegap • The future of hybrid apps Native app development is expensive… Obj- C#, BB C, C, Android Java VB.NET Java Xcode C++ Visual , etc. Java Studio, Studio Eclipse SDK Plug-In .app .apk .xap .cod App Store Play Store Windows Marketplace BlackBerry App World Separate source code and expertise Releasing same app for each platform is (GUI toolkits, SDKs, etc.) results in time-consuming when resources are Expensive development and scarce maintenance Cross-Platform Development Tools to the Rescue? Web WhichSourceone-code Runtime (VM Web-to-native App toolkits/Framew Translators approach) Wrappers Factories should I choose? orks web, hybrid, Output native native web-app hybrid-app native What about Hybrid apps? Web Source-code Runtime (VM Web-to-native App toolkits/Framew Translators approach) Wrappers Factories orks web, hybrid, Output native native web-app hybrid-app native Combination of web toolkits and Web-to-native wrappers What are Hybrid Apps? • Web code runs inside a thin native wrapper Native Container o Chromeless WebView Web Code • Web portion can be downloaded HTML from the web or packaged within CSS the app (offline availability) JS • Access device features through plugins o JS-to-native bridge Device APIs • Reuse existing web skills Low Ranking Hybrid app properties High Ranking Native apps Hybrid apps Web apps Search on referrals (Facebook, Ease of discovery Through native app stores twitter, etc.) Fragmented across multiple Reach Works on almost all devices platorms Full acces to platform Access to native API at Depth of experience Limited by browser sandbox resources the expense of UI Customer ownership & Apple Appstore enforce Complete ownership of customer terms onerous terms Engagementand Notifications and home No notifications, difficult to get user recurring use screen icon to save the link No accepted method of payment Monetisation potential High through Appstores (Chrome web-store) Ease of cross-platform Replication developing for Significant fragmentationfor development multiple platforms advanced apps Web content updates Upgradebility & updates Through native app stores ** No approval needed require no approval*** Full support by native Browser debugging tools automated Debugging & testing development tools testing tools Small changes require Live-reload, instant reflection of Developing experience recompilation and changes reinstallation Vendor lock-in No code sharing between Limited to no code sharing between (framework) platforms frameworks Multi-platform Local build for each platform Cloud-based build tools No cross-platform building required build support seperately offered by frameworks **Enterprise app stores require no update approval. They set their own terms. ***Drastic functionality changes results in app being pulled from stores. (direct-updates-allowed-by-apples-guidelines?) VisionMobile Cross-Platform Developer Tools 2012 Hybrid App Example (Single-Page-App) Antwerp – Tax app Agenda • Why cross-platform mobile app development? • What are hybrid apps? • Hybrid app early and current struggles • Hybrid is bigger than Cordova/Phonegap • The future of hybrid apps The Hybrid Landscape Early Struggles 2012 – Mark Zuckerberg: “The biggest mistake that we made, as a company, is betting too much on HTML5 as opposed to native” The deal breakers: - The lack of tooling Live Reload, Remote debugging, Memory/FPS profiling, etc… - Scrolling performance iOS8+, Android 4.1+ have native scrolling for WebViews - Touch events latency FastClick libraries, Fixed by browsers* - No GPU hardware acceleration Hardware accelerated CSS, WebGL* LocalStorage, IndexedDB, SQLite, File - Better caching system http://lists.w3.org/Archives/Public/public-coremob/2012Sep/0021.html The Hybrid Landscape Current Struggles Discussed here • WebView fragmentation • Yet another framework syndrome Others • Security • Scalability (complex apps) • Always a (few) step(s) behind native feature support • Quality of plugins and community APIs • Poor gesture recognition compared to native • App UI feels out of place The Hybrid Landscape Current Struggles WebView Fragmentation iOS7 and earlier - UIWebView 4.3 and earlier - webkit 7.x - IE9 8.0 - IE10 iOS8 - WKWebView (Nitro JIT) 4.4 - blink 8.1 - IE11 5.0 and later - blink-updatable iOS9 - WKWebView (Nitro JIT) 10 - Edge (Chakra) 7% 9% 5% 9% 18% 33% 31% 75% 36% 77% As measured by the App Store As measured by the Play Store As measured by AdDuplex on January 11, 2016. on January 4, 2016. on December 15, 2015. Fragmentation results in: - Inconsistent feature support http://caniuse.com/ or http://mobilehtml5.org/ - Performance implications JetStream or Speedometer benchmark - Lowest common denominator for legacy support The Hybrid Landscape Current Struggles WebView Fragmentation – continued iOS7 and earlier - UIWebView 4.3 and earlier - webkit 7.x - IE9 8.0 - IE10 iOS8 - WKWebView (Nitro JIT) 4.4 - blink 8.1 - IE11 5.0 and later - blink-updatable iOS9 - WKWebView (Nitro JIT) 10 - Edge (Chakra) 7% 9% 5% 9% 18% 33% 31% 75% 36% 77% As measured by the App Store As measured by the Play Store As measured by AdDuplex on January 11, 2016. on January 4, 2016. on December 15, 2015. Custom WebView https://crosswalk-project.org/ The Hybrid Landscape Current Struggles WebView Fragmentation – continued 7.x - IE9 iOS7 and earlier - UIWebView earlier then 4.x - webkit 8.0 - IE10 iOS8 - WKWebView (Nitro JIT) 4.x and later - blink-updatable 8.1 - IE11 iOS9 - WKWebView (Nitro JIT) 10 - Edge (Chakra) 7% 3% 9% 5% 9% 18% 75% 97% 77% As measured by the App Store As measured by the Play Store As measured by AdDuplex on January 11, 2016. on January 4, 2016. on December 15, 2015. - Distributed as Cordova-plugin - Chromium version 46 (latest stable v17) - Reduces WebView fragmentation Custom WebView - Controlled runtime and upgrade cycle - Larger apk size ±20 MB https://crosswalk-project.org/ The Hybrid Landscape Current Struggles WebView Fragmentation – continued 7.x - IE9 iOS7 and earlier - UIWebView earlier then 4.x - webkit 8.0 - IE10 iOS8 - WKWebView (Nitro JIT) 4.x and later - blink-updatable 8.1 - IE11 iOS9 - WKWebView (Nitro JIT) 10 - Edge (Chakra) 7% 3% 9% 5% 9% 18% 75% 97% 77% As measured by the App Store As measured by the Play Store As measured by AdDuplex on January 11, 2016. on January 4, 2016. on December 15, 2015. WKWebView (iOS8) problems: - Cannot load local files à messy workaround - Freezing main thread Resulted in the continued - Unwanted scrolling behaviour use of the old UIWebview - etc.. The Hybrid Landscape Current Struggles WebView Fragmentation – continued 7.x - IE9 iOS7 and earlier - UIWebView earlier then 4.x - webkit 8.0 - IE10 iOS8 - WKWebView (Nitro JIT) 4.x and later - blink-updatable 8.1 - IE11 iOS9 - WKWebView (Nitro JIT) 10 - Edge (Chakra) 7% 3% 9% 5% 9% 18% 75% 97% 77% As measured by the App Store As measured by the Play Store As measured by AdDuplex on January 11, 2016. on January 4, 2016. on December 15, 2015. WKWebView (iOS9): - Fixed local file loading problem - Only available on iOS9, - Cordova-plugin available since Cordova iOS8 still requires iOS 4.0.0 workaround - Safari View Controller The Hybrid Landscape Current Struggles Yet Another Framework Syndrome • Almost every day there are new libraries, frameworks and tools • Trying to find a needle in a haystack • Create something “new” rather than improve existing solutions results in reinventing the wheel • Uncertain future of frameworks and tools • Vendor lock-in • E.g.: Famo.us recently came to an end (11/2015) Helpful resources: - TodoMVC project - how-to-pick-a-frontend-web-framework - front-end-handbook http://www.developereconomics.com/search/tools/to/build/ Agenda • Why cross-platform mobile app development? • What are hybrid apps? • Hybrid app early and current struggles • Hybrid is bigger than Cordova/Phonegap • The future of hybrid apps Hybrid Apps are bigger than cordova Hybrid App Patterns Pure Blended Mullet Fallback pattern pattern pattern pattern + + Properties • Single webview for • Use native components • Fully native for early • Mostly native app entire screen for the main navigation parts of a user flow UI (e.g. Tab bar) within the app • Uses hybrid webviews • Content & navigation (product browsing) for little used or done in HTML5 • Use multiple webviews frequently changing with content • Web based for later content • Thin native wrapper parts like checkout exposing native APIs • Native transition animations Example Apps • Lokale Politie • Apples’s App store app • Walmart apps • Facebook app Antwerpen app • Google’s Gmail app • Belk apps • Instagram app • Antwerp – Tax • Autosalon 2015 Brussel Native vs Hybrid vs Web – Kinvey & MOOVWEB ebook Hybrid Apps are bigger than cordova Pattern Examples Politie Antwerpen Apple App Store Walmart Facebook Pure Pattern Blended Pattern Mullet Pattern Fallback Pattern (Single Page) (Multi Page) Hybrid Apps are bigger than cordova Takeaways Complex hybrid apps often start out as single-page apps. However, as the complexity increases they transistion to larger native portions (fallback pattern) Native VS Hybrid war is over… Pure hybrid apps serve a different purpose than native apps Good hybrid apps are hard to spot (e.g. Instagram) Agenda • Why cross-platform mobile app development? • What are hybrid apps? • Hybrid app early and current struggles • Hybrid is bigger than
Recommended publications
  • Mobile App Development with Ionic, Revised Edition Cross-Platform Apps with Ionic, Angular, and Cordova
    Revised Edition Mobile App Development w i t h I o n i c CROSS-PLATFORM APPS WITH IONIC, ANGULAR & CORDOVA Chris Griffith Mobile App Development with Ionic, Revised Edition Cross-Platform Apps with Ionic, Angular, and Cordova Chris Griffith Beijing Boston Farnham Sebastopol Tokyo Mobile App Development with Ionic, Revised Edition by Chris Griffith Copyright ©2017 Chris Griffith. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com/safari). For more information, contact our corporate/insti‐ tutional sales department: 800-998-9938 or [email protected]. Editor: Meg Foley Interior Designer: David Futato Production Editor: Justin Billing Cover Designer: Karen Montgomery Copyeditor/Proofreader: Amanda Kersey Illustrator: Rebecca Demarest Indexer: WordCo Indexing Services, Inc. September 2017: First Edition Revision History for the First Edition 2017-08-18: First Release See http://oreilly.com/catalog/errata.csp?isbn=9781491998120 for release details. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Mobile App Development with Ionic, Revised Edition, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc. While the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the author disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work.
    [Show full text]
  • App Wrapping MD
    App Wrapping MD VMware Workspace ONE UEM App Wrapping MD You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ VMware, Inc. 3401 Hillview Ave. Palo Alto, CA 94304 www.vmware.com © Copyright 2021 VMware, Inc. All rights reserved. Copyright and trademark information. VMware, Inc. 2 Contents 1 VMware AirWatch App Wrapping 5 Wrapping Process in On-Premises Environments 5 File Storage 6 The Storage of Data 6 Disabling Logging in Wrapping Profiles 6 Location Data, Analytics, and Telecom Data 7 Cluster Session Management in iOS and Reduced Flip Behavior for SSO with App Wrapping v5.4 or later 7 SSO Sessions and SDK-Integrated Apps 7 2 App Wrapping Requirements 8 General Requirements 8 Supported Platforms and Bit Versions 8 Supported Deployments and Requirements 8 Store Apps Do Not Wrap 9 Standard Processes 9 Standard and C/C++ Libraries 9 Tampering Protection 9 Supported Settings and Policies Options 9 Visual Studio Enterprise Edition 11 Android Requirements 11 Supported Android Components 11 Android Apps Built with Crosswalk Project Libraries Do Not Wrap 11 Android Enterprise Support 11 Xamarin Requirements for Android 11 Android Bit Architecture Native Files 12 Android Method Limits and Multidex Support 12 Android Apps and the Version of the SDK That Wraps Them 13 Native Libraries in Android Apps 13 Android Library Dependencies 13 Enabling and Disabling Encryption for Android Wrapped Apps 14 iOS Requirements 14 iOS App Wrapping Requirements 14 Using iOS Apps Developed in Swift 15 Entitlements for iOS Apps 15 Mobile Provisioning Profile for iOS Apps 15 Synchronous Calls and iOS Apps 15 Integrated Authentication Code Requirements for iOS (Swift) Apps 15 VMware, Inc.
    [Show full text]
  • Crosswalk Shared Mode
    Crosswalk Shared Mode This document aims to provide features description, build configuration, tools integration and the details of new embedding APIs for shared mode. Summary Feature Description Version Check Mechanism Architecture Independent Security Check Built­in Updater Tools Integration Enable Shared mode Configure the download URL Embedding API Permissions XWalkActivity XWalkInitializer XWalkUpdater 1. Summary Shared mode allows multiple Crosswalk applications to share one Crosswalk runtime. Each Crosswalk application is bundled with a reflection layer instead of the full library files, whereas there would be one and only one APK of Crosswalk runtime to be installed on the device for the Crosswalk applications to use. Figure: Embedded Mode vs. Shared Mode The APK of Crosswalk runtime is published on Google Play Store and Crosswalk Project’s official website. The end­users are able to get the APK via Google Play Store or the developer’s self­hosting service. The Crosswalk runtime will be upgraded periodically to introduce the latest feature of Crosswalk and Chromium. The developer has the responsibility to follow up the update cycle and keep their applications compatible with the latest version of Crosswalk runtime. Pros: ● Produces a significant smaller APK size for Crosswalk applications. For example of packaging a simple HelloWorld web application, the APK file size is 20MB for ARM and 23MB for x86. If the same contents is packaged in shared mode, the APK file size will shrink to 68KB. ● The Crosswalk application built in shared mode can run on both of the IA and ARM devices, even the application built in embedded mode for ARM can run on the IA devices, as long as there is a Crosswalk runtime installed on the device.
    [Show full text]
  • D2.1 System Architecture
    Directorate General for Communications Networks, Content and Technology Innovation Action ICT-687655 D2.1 System Architecture Due date of deliverable: 31 March 2016 Actual submission date: 10 May 2016 Resubmitted with minor changes: 28 April 2017 Start date of project: 1 December 2015 Duration: 36 months Lead contractor for this deliverable: Cisco Version: 28 April 2017 Confidentiality status: Public © 2-IMMERSE Consortium 2017 Page 1 of (128) Grant Agreement number: 687655 — 2-IMMERSE — H2020-ICT-2015 D2.1 System Architecture Abstract This document describes the system architecture being developed by the 2-IMMERSE project. This architecture is designed to enable the four multi-screen service prototypes that will be delivered through the project. The System Architecture is layered as a set of platform services, a client application architecture and production architecture. The system architecture is a work in progress; it will evolve both as we refine it and specify it in more detail, and as we deliver each of the multi-screen service prototypes through the project. Target audience This is a public deliverable and could be read by anyone with an interest in the system architecture being developed by the 2-IMMERSE project. As this is inherently technical in nature, we assume the audience is technically literate with a good grasp of television and Internet technologies in particular. We have included a Technology Overview section that summarises a range of technologies that are potentially applicable within the project. This document will be read by the Project Consortium as it defines the system architecture that will be adopted and evolved throughout the project.
    [Show full text]
  • DEVELOPMENT of HYBRID MOBILE APPS Using Ionic Framework
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Theseus Andrea Sánchez Blanco DEVELOPMENT OF HYBRID MOBILE APPS Using Ionic framework Bachelor’s Thesis Information technology May 2016 DESCRIPTION Date of the bachelor's thesis 23.05.2016 Author(s) Degree programme and option Andrea Sánchez Blanco Information Technology Name of the bachelor's thesis DEVELOPMENT OF HYBRID MOBILE APPS Using Ionic Framework Abstract The purpose of the current study is to analyse the advantages and disadvantages of web-based hybrid apps. This thesis explains from the beginnings of mobile phones how and why it has been created this solution, and how mobile’s history has evolved to need an intermediate approach. It is also studied the general principles of good mobile user interfaces, in order to create a full good user experience from appearance to performance and usability, and how to implement the server side in an Ionic mo- bile application. These have been done providing a general context about the first mobile phones to the latest ones, going through the different mobile OSs and focusing on an intermediate approach, hybrid web-based apps. After that I have explained Ionic Framework and the User Interface guidelines. Finally I have documented my practical part, associating it with the theoretical part, and explaining how I did the server side implementation on my app. The conclusions I took are more general than I thought at the beginning. I have studied this solution with Ionic Framework, with which I have had an overall good experience.
    [Show full text]
  • Distance Learning and Assistance Using Smart Glasses
    education sciences Article Distance Learning and Assistance Using Smart Glasses Michael Spitzer 1,* ID , Ibrahim Nanic 1 and Martin Ebner 2 ID 1 Virtual Vehicle Research Center, Inffeldgasse 21/A, Graz 8010, Austria; [email protected] 2 Department Educational Technology, Graz University of Technology, Münzgrabenstraße 35a, Graz 8010, Austria; [email protected] * Correspondence: [email protected] Received: 30 November 2017; Accepted: 25 January 2018; Published: 27 January 2018 Abstract: With the everyday growth of technology, new possibilities arise to support activities of everyday life. In education and training, more and more digital learning materials are emerging, but there is still room for improvement. This research study describes the implementation of a smart glasses app and infrastructure to support distance learning with WebRTC. The instructor is connected to the learner by a video streaming session and gets the live video stream from the learner’s smart glasses from the learner’s point of view. Additionally, the instructor can draw on the video to add context-aware information. The drawings are immediately sent to the learner to support him to solve a task. The prototype has been qualitatively evaluated by a test user who performed a fine-motor-skills task and a maintenance task under assistance of the remote instructor. Keywords: distance learning; smart glasses; WebRTC; maintenance 1. Introduction In recent years, many smart glasses devices emerged on the market with a reasonable price. The potential of such devices was already investigated in various domains. For example, smart glasses were used as an assistance system to guide visitors in a museum [1].
    [Show full text]
  • Forcepoint Trusted Access Mobile Client (ASPP12) Security Target
    Forcepoint Trusted Access Mobile Client (ASPP12) Security Target Version 0.5 May 30, 2017 Prepared for: Forcepoint Company 10900 Stonelake Blvd. Third Floor Austin, TX 78759, USA Prepared By: www.gossamersec.com Forcepoint Trusted Access Mobile Client Version 0.5, May 30, 2017 (ASPP12) Security Target 1. SECURITY TARGET INTRODUCTION ........................................................................................................ 3 1.1 SECURITY TARGET REFERENCE ...................................................................................................................... 3 1.2 TOE REFERENCE ............................................................................................................................................ 3 1.3 TOE OVERVIEW ............................................................................................................................................. 4 1.4 TOE DESCRIPTION ......................................................................................................................................... 4 1.4.1 TOE Architecture ................................................................................................................................... 4 1.4.2 TOE Documentation .............................................................................................................................. 5 2. CONFORMANCE CLAIMS .............................................................................................................................. 6 2.1 CONFORMANCE RATIONALE
    [Show full text]
  • SYLLABUS: Summer, 2021, Online
    SPED 475— Instructional Strategies for the Content Areas COURSE SYLLABUS: Summer, 2021, online INSTRUCTOR INFORMATION Instructor: Dr. Belinda Rudinger, ATP, Clinical Assistant Professor Office Hours: By appointment University Email Address: [email protected] Preferred Form of Communication: University Email. Communication Response Time: Using University Email = within 72 hours Monday – Friday, weekends and holidays may take longer. COURSE INFORMATION Materials – Textbooks, Readings, Supplementary Readings No required textbook; all readings provided in D2L Course Description SPED 475 presents evidence-based strategies and interventions for students with disabilities. A focus on quality reading, mathematics, writing, and behavioral assessment, strategies, and interventions to support students with disabilities will be provided. (Hours: 3) Course Objectives: Essential Skills • Familiarity with TEKS as they relate to assessment, IEP development, and curriculum/intervention methods • Developing data-based goals on IEP’s; writing measurable goals • Knowledge/application of effective reading, writing, and math evidence- based instructional methods The syllabus/schedule are subject to change. Texas EC-12 Special Education Competencies 1.Competency 001: The special education teacher understands and applies knowledge of the characteristics and needs of students with disabilities. 2. Competency 002: Understanding of formal and informal assessment procedures and how to evaluate student competencies to make instructional decisions. 3.Competency 003: The special education teacher understands and applies knowledge of procedures for planning instruction for individuals with disabilities. 4. Competency 007: The special education teacher knows how to promote students’ educational performance in all content areas by facilitating their achievement in a variety of settings and situations. 5. Competency 008: The special education teacher promotes students’ performance in English, language arts, and reading.
    [Show full text]
  • Reading-App-Builder-02-Building-Apps.Pdf
    Building Apps Reading App Builder: Building Apps © 2021, SIL International Last updated: 22 April 2021 You are free to print this manual for personal use and for training workshops. The latest version is available at http://software.sil.org/readingappbuilder/resources/ and on the Help menu of Reading App Builder. 2 Contents 1. Preparing content for your app ............................................................................ 6 1.1. Preparing text ....................................................................................................... 6 1.2. Preparing images .................................................................................................. 8 1.3. Preparing audio..................................................................................................... 8 2. How to build your first app .................................................................................. 8 3. Installing the app on your phone .........................................................................11 4. App Creation Basics ............................................................................................15 4.1. How should I choose the app package name? ................................................... 15 4.2. Do I have to create a new keystore for each app, or can I reuse the same keystore for several of my apps? ...................................................................... 16 4.3. I don’t like the name “Reading App”. Have you thought of calling the app something else? ................................................................................................
    [Show full text]
  • IEEE Paper Template in A4
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Lirias Ruben Smeets et al, International Journal of Computer Science and Mobile Computing, Vol.5 Issue.6, June- 2016, pg. 190-199 Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology ISSN 2320–088X IMPACT FACTOR: 5.258 IJCSMC, Vol. 5, Issue. 6, June 2016, pg.190 – 199 Trends in Web Based Cross Platform Technologies Ruben Smeets1, Kris Aerts2 ¹ES&S, DTAI, KU Leuven Technology Campus Diepenbeek, Agoralaan gebouw B bus 8, 3590 Diepenbeek, Belgium 1 [email protected]; 2 [email protected] Abstract— Cross platform mobile application development using web technologies has traveled a long way since its inception back in 2008-2009 [1]. Frameworks such as Apache Cordova/Phonegap [2] or Appcelerator [3] enabled web developers to reuse their exiting development skills to build applications for a wide variety of mobile platforms and opened up app development to a massive community. Since then many technologies have been developed: some failed, some succeeded. In this paper we provide a comprehensive overview of cross platform tools using web development technologies and identify trends that emerged from this landscape. Keywords— Review paper, cross-platform tools, hybrid applications, Phonegap/Cordova, mobile frameworks. I. INTRODUCTION Mobile apps have become an important part of our society. The time we spend on our mobile device is increasing every year [4]. However, the time spent on developing mobile apps tends to increase even more, especially when each mobile platform must have a dedicated, native application.
    [Show full text]
  • Cross Platform Communication Apps
    Copyright © IEEE, 2016. This is the author's copy of a paper that appears in an IEEE conference proceeding. Please cite as follows: K. Singh and J. Buford, "Developing WebRTC-based team apps with a cross-platform mobile framework", In proceedings of IEEE Consumer Communications and Networking Conference (CCNC), Las Vegas, NV, USA, Jan 2016. Developing WebRTC-based Team Apps with a Cross-Platform Mobile Framework Kundan Singh John Buford Avaya Labs Research Avaya Labs Research Santa Clara, CA, USA Basking Ridge, NJ, USA [email protected] [email protected] Abstract—We present lessons learned in developing cross described in other studies for: real-time multi-party streaming platform multi-party team applications. Our apps include a of video using WebRTC, real-time notifications, e.g., using range of communication and collaboration scenarios: document WebSocket, secure access to cloud services, and apps and content sharing in a team space, an agent-based meeting interoperability with browser-based and desktop versions. We helper, phone number dialer via a voice-over-IP (VoIP) gateway, address challenges including and beyond these requirements. and multi-party call in peer-to-peer or client-server mode. We use web real-time communication (WebRTC) to enable the audio These apps include: (1) a team collaboration app for and video media paths in the apps. We use frameworks such as persistent sharing of content with escalation to real-time voice, Chrome Apps and Apache Cordova to create apps that can be video or app sharing, (2) a web-based video call/conference accessed from a browser, or installed on a desktop, mobile service that runs all the app logic in the endpoint, (3) a meeting device, or wearable.
    [Show full text]
  • Closing the Web Platform Gap with Native
    Closing the Web Platform Gap with Native Presented by: Moh Haghighat Sr. Principal Engineer, Intel® Corporation March 12, 2014 Agenda • A bit of history, developments • Remaining gaps in web vs. native • Intel®’s work on closing the gaps • Bringing SIMD to JavaScript* • Intel® XDK, Crosswalk* • Towards Perceptual Computing • Summary 2 HTML5 – The New Lingua Franca? 1991 2001 2009 2015 APPS WEB APPS WEB * * * .exe HTML, Flash* iOS , Android , Windows HTML5 Native code Web – “Write once, run on App Stores “Write Once, Run PC spiral any browser” Walled Gardens Everywhere” “New open standards created in the mobile era, such as HTML5, “If you want to do something that is universal, no question, will win on mobile devices.” – Steve Jobs world is going HTML5.” – Steve Ballmer “It looks to me like HTML5 will eventually become a way almost all applications are built, including those on new phones.” – Eric Schmidt 3 JavaScript* Has Grown Up JavaScript* apps grew in size JavaScript* became fast … really fast! Gmail*: Past, Present, and Future, Adam de Boor, Google* www.usenix.org/event/webapps10/tech/slides/deboor.pdf † Modern JavaScript, Luke Hoban, Microsoft* www.microsoft.com Big Web App? Compile it! Alon Zakai, Mozilla* http://kripken.github.io/mloc_emscripten_talk 4 Early JavaScript* JITs, Firefox* TraceMonkey* Firefox* 3.1 with Tracing vs. Firefox 3† Launched early August 2008 Intel® was an early contributor in Firefox JavaScript* JIT compiler † Courtesy of Brendan Eich (http://weblogs.mozillazine.org/roadmap/) 5 Generic JIT Support in Intel®
    [Show full text]