Standards for Web Applications on Mobile: Current State and Roadmap
Total Page:16
File Type:pdf, Size:1020Kb
Standards for Web Applications on Mobile: current state and roadmap October 2014 Latest version http://www.w3.org/Mobile/mobile-web-app-state/ This version http://www.w3.org/2014/10/mobile-web-app-state/ (PDF version) Previous version http://www.w3.org/2014/07/mobile-web-app-state/ Web technologies have become powerful enough that they are used to build full-featured applications; this has been true for many years in the desktop and laptop computer realm, but is increasingly so on mobile devices as well. This document summarizes the various technologies developed in W3C that increase the capabilities of Web applications, and how they apply more specifically to the mobile context. A good subset of these technologies are described and explained in the W3C on-line training on programming Web applications1. 1. Graphics ...................................................................................................................................................................................4 2. Multimedia.............................................................................................................................................................................12 3. Device Adaptation .................................................................................................................................................................16 4. Forms .....................................................................................................................................................................................20 5. User interactions ....................................................................................................................................................................24 6. Data storage ...........................................................................................................................................................................30 7. Personal Information Management........................................................................................................................................34 8. Sensors and hardware integration ..........................................................................................................................................36 9. Network..................................................................................................................................................................................40 10. Communication & Discovery ................................................................................................................................................44 11. Packaging...............................................................................................................................................................................47 12. Payment..................................................................................................................................................................................50 13. Performance & Optimization.................................................................................................................................................52 14. Privacy & Security.................................................................................................................................................................56 Status and changes This document is the 15th edition of this overview of mobile Web applications technologies. The previous edition was released in July 20142. A live version of this document accepts contributions on the W3C Web and Mobile Interest Group Github repository3. This document is published by the Web and Mobile Interest Group4; feedback on every aspect of this document should be sent to [email protected], the publicly archived mailing list5 of the interest group, or raised as issues on the Github repository6, or alternatively to the author ([email protected]). It will serve as input for the next iteration of the document. It documents the following changes in the Web platform since July 2014: 1. http://www.w3devcampus.com/writing-great-web-applications-for-mobile/ 2. http://www.w3.org/2014/07/mobile-web-app-state/ 3. https://github.com/w3c-webmob/mobile-web-app-standards/ 4. http://www.w3.org/Mobile/IG/ 5. http://lists.w3.org/Archives/Public/public-web-mobile/ 6. https://github.com/w3c-webmob/mobile-web-app-standards/issues/ 1/59 STANDARDS FOR WEB APPLICATIONS ON MOBILE DOCUMENT STRUCTURE Emerging work • the Second Screen Presentation Working Group7 has been chartered to work on an API to request display of content on an external screen, with an editor draft8 available, based on the work previously done in the eponymous Community Group; • a draft API from the Web Bluetooth Community Group9 has been made available; • the Device APIs Working Group has started work on a generic pattern for sensors APIs10 which aims at unifying and simplifying the creation and usage of APIs for sensors; • work on an API to manage permissions across other APIs11 has started, to be potentially added to the Web App Security Working Group12; Published as First Public Working Draft • Resource Hints13, a set of markup-based hints for increased network performance, was published as a First PUblic Working Draft by the Web Performance Working Group; Returned to Last Call • the Battery Status API14 returned to Last Call after normative changes made based on implementation feedback; • likewise, Pointer Events15 returned to Last Call Working Draft following implementors feedback; • a new Last Call Working Draft of CSS Flexible Box Layout Module Level 116 was announced; Reached Candidate Recommendation • the Canvas API specification17 was re-published as a Candidate Recommendation after its latest round of Last Call review; • likewise, the vibration API18 and HTML Media Capture19 specifications were re-published as a Candidate Recommendation; • CSS Backgrounds and Borders Module Level 320 was published as a Candidate Recommendation Reached Recommendation • after 10 years of effort, HTML521, the cornerstone of the Open Web Platform, was published as a W3C Recommendation Specification merged, split or abandoned • The Resource Priorities22 specification from the Web Performance Working Group was abandoned in favor of the Resource Hints23 one; Newly tracked • This document now separately tracks the touch-action property defined in Pointer Events24, as this property is gaining more traction than the overall API; Document structure The features that these technologies add to the Web platform are organized under the following categories: graphics, multimedia, device adaptation, forms, user interactions, data storage, personal information management, sensors and hardware integration, network, communication and discovery, packaging, payment, performance & optimization and privacy & security. 7. http://www.w3.org/2014/secondscreen/ 8. http://w3c.github.io/presentation-api/ 9. https://webbluetoothcg.github.io/web-bluetooth/ 10. https://github.com/w3c/sensors 11. https://w3c.github.io/permissions/ 12. http://www.w3.org/2011/webappsec/ 13. http://www.w3.org/TR/resource-hints/ 14. http://www.w3.org/TR/battery-status/ 15. http://www.w3.org/TR/pointerevents/ 16. http://www.w3.org/TR/css-flexbox-1/ 17. http://www.w3.org/TR/2dcontext/ 18. http://www.w3.org/TR/vibration/ 19. http://dev.w3.org/2009/dap/camera/ 20. http://www.w3.org/TR/css3-background/ 21. http://www.w3.org/TR/html5/ 22. http://www.w3.org/TR/resource-priorities/ 23. http://www.w3.org/TR/resource-hints/ 24. https://dvcs.w3.org/hg/pointerevents/raw-file/tip/pointerEvents.html#the-touch-action-css-property 2/59 STANDARDS FOR WEB APPLICATIONS ON MOBILE DOCUMENT STRUCTURE Other users Packaging Web Application Web Application Web Application Web Application Other apps Content Web Comm. Text Network Graphics Other devices PIM Multimedia Storage User Input User Interactions Hardware User Forms &Sensors The Web as an application development platform In each category, a table summarizes for each feature: • which W3C specification defines the feature, • which W3C group is responsible of the said specification, • the stage of the specification in the W3C Recommendation track (see below), • the estimated stability of the feature, i.e. how little the author expects it to change, from an early draft that can still evolve a lot, to a finished document with only minor expected changes, • a link to the latest editors draft of the document, and a representation of the recent editing activity; • some qualitative indication on availability of implementations on mobile devices, based on data collected primarily from Can I Use…25 and mobile HTML526, completed with data from Mozilla developer network27, QuirksMode28, JWPalyer's state of HTML5 video29, Chromium Dashboard30, Internet Explorer Platform status31, the Device APIs Working Group Implementation status32 as well as the author’s understanding of the mobile devices market (see also the code used to generate the support icons33) • When available, a link to a relevant tutorial on WebPlatform Docs34, and to relevant on-line training courses on W3DevCampus35 • a link to the test suite for the said feature, and when relevant, a github ribbon to access the underlying git repository. As a reminder, W3C creates Web standards by progressing documents through its Recommendation track36, with the following stages: “Editors drafts” represent the current view of the editors of the specification but have no standing in terms