W3C中国

W3C 成立 MiniApps 标准工作组,推动 MiniApp 生态繁荣健康发展

 

该博客文章由董永清、李安琪、薛富侨、张腾元、张永靖、周丹联合编辑(文章英文原文)。

传统的 HTML 5应用开发效率较高,但用户性能体验不够完美,于是出现了使用 Web 技术开发具有类似于原生应用的用户体验的 Web 应用的尝试,包括 Cordova、Electron、NativeScript、Progressive Web Apps、W3C Widgets 等。

一种名为 MiniApp 的新尝试出现并迅速受到用户的欢迎。MiniApp 是一种小型、免安装、快速加载的程序,通常在一个宿主应用或操作系统中运行(如小程序、快应用),也可以是支持跨端部署的 JS 原生应用。MiniApp 既使用了 CSS 和 JavaScript 等 Web 技术,同时又可以使用操作系统提供的能力。

目前的 MiniApp 厂商众多,而各厂商都有着各自不同的 API。为了增强不同 MiniApp 平台之间的互操作性,阿里巴巴、百度、华为、小米等 MiniApp 厂商自2019年5月以来通过在 W3C Web 中文兴趣组的合作,于同年9月联合编撰发布 《MiniApp 国际标准化白皮书》,作为初步的标准化探索。随着全球越来越多的公司表现出对 MiniApp 相关标准讨论的浓厚兴趣,MiniApps生态社区组于TPAC 2019期间正式成立,以便全球 Web 社区展开广泛合作推动 MiniApp 的国际标准化进程。

经过为期一年的孵化,MiniApps 生态社区组开发了一系列 MiniApp 技术规范提案和一个需求文档。为了使 MiniApp 标准化具有更强的互操作性,最大限度地与 Web 融合,W3C 团队和 MiniApp 社区组协调组织了一次全球范围的 MiniApp 标准化研讨会,W3C 技术架构组(TAG)代表及20多个全球厂商参会,共同探讨推动 MiniApp 未来的标准化方向。 在此特别感谢 MiniApps 生态社区组主席陈胤立(小米)、谷盛(Google)、李安琪(阿里巴巴)、祖明(百度),各提案编者以及全体成员的贡献,该社区组将继续孵化新的标准化需求与规范提案。

基于广泛的标准化需求,W3C 现正式成立 MiniApps 工作组,致力于联合广大会员及社区成员深入探索协调多样的 MiniApp 生态、增强不同 MiniApp 平台间的互通性,从而最大程度地提升 MiniApps 与 Web 的融合,减少技术碎片化并降低开发者的学习成本。李安琪(阿里巴巴)、张永靖(华为)、祖明(百度)出任 MiniApps 工作组主席,联合主持小组的日常工作。

工作组章程详细介绍了小组的标准化范畴,开发中的规范提案包括:

MiniApp Manifest:MiniApp Manifest 以 JSON 文件方式对 MiniApp 进行全局参数配置,包括 MiniApp 的基本描述信息、页面路由信息、窗口显示样式、权限管理等。MiniApp Manifest 是 Web App Manifest 的扩展,它继承了 Web App Manifest 的部分基本成员属性(如name, lang等),同时基于运行环境的差异而扩展了版本管理、页面路由、窗口配置等相关的成员属性(如versionName)。

MiniApp Packaging:MiniApp Packaging 规范定义了 MiniApp 的标准化打包文件结构及其构造和解析方法,解决不同运行时环境识别、加载、缓存和更新 MiniApp 包时的互通性问题。一个 MiniApp package 包含了该应用所需的资源文件,包括文档模板、UI 组件、样式表、JS 脚本、本地化配置、安全签名、manifest 文件等。

MiniApp Lifecycle:MiniApp 生命周期规范定义了 MiniApp 生命周期的事件与管理 MiniApp 应用及各个 MiniApp 页面的生命周期流程。通过实施本规范可以实现 user agent 对 MiniApp 全局应用生命周期与 MiniApp 页面生命周期的管理。MiniApp 生命周期规范将为 MiniApp 的跨平台互通提供基础,不同的 MiniApp 平台基于该规范可以实现一致性的 MiniApp 生命周期管理,进而实现一致性的 MiniApp 页面的展示。

MiniApp Addressing:MiniApp Addressing 机制定义了 MiniApp 的定位方式,规范了 MiniApp 的包信息、页面路径、参数信息的语法格式,以及这些语法部件在小程序中的含义。规范还定义了宿主平台对 MiniApp 定位协议的解引用算法,并提出 Addressing 过程中的安全性相关的建议。

MiniApp Widget Requirements:MiniApp Widget 是 MiniApp 页面的一种特殊形式,Widget 可以仅占用屏幕部分区域,常可于为用户显示关键信息和响应简单的用户操作,例如在负一屏卡片中展现用户行程、订单配送等服务内容和简单交互。此需求描述了 MiniApp Widget 规范的场景需求和制定 MiniApp Widget 规范需要考虑的各个部分需求,其中包含了对 Miniapp 的 Manifest、Packaging、Lifecycle 等其他规范在 Widget 场景下需要做出调整的描述,以及 Widget 特定的需求描述,例如 Widget 与宿主原生应用之间的通讯。


欢迎加入 W3C MiniApps 工作组!作为全球极具影响力的中立技术平台,W3C 拥有成熟的技术社区和发展流程,相应提案在此可以获得来自 Web 技术架构专家国际化无障碍安全隐私等层面的全方位审核,以及众多相关技术小组的意见输入,确保规范符合Web架构设计原则。

工作组计划于2021年1月27日召开线上分享会,欢迎国内 MiniApp 厂商、感兴趣的社区开发者注册参会(选择「"YES" 使用 W3C 账号登陆」或「"NO" 无账号直接输入邮箱」查看页面内容并注册),与 W3C MiniApps 标准工作组主席、规范提案作者深入交流 MiniApp 开发的现状和未来的标准化计划。

期待大家一起参与 MiniApp 的技术讨论,共同推动 MiniApp 标准化,促进国际厂商间的广泛交流,推动产业界的互联互通,维护 One Web 的技术理念,让 MiniApp 技术为更广大的人群提供更加优质的服务。

 

 

评论已关闭

站内搜索

万维网联盟(World Wide Web Consortium, W3C)是Web领域的国际标准化组织,致力开发开放Web标准确保Web的长期发展,实现“尽展Web无限潜能”的使命。

更多内容>>

近期活动

更多内容>>

W3Cx 开放课程

W3C技术标准

查看Web技术标准
- 所有标准
■ Web与产业融合 ■
- 汽车 | 数字出版 | Web与电信
- 娱乐与广播电视 | Web支付 | Web数据
- 物联万维网(WoT) | Web安全
■ Web For All ■
- Web无障碍 | 国际化 | 索引(A to Z)
■ 社区组与商务组 ■
- 所有社区组 | 新建社区组
■ 标准工作组 ■
- 所有标准小组 | 参与指南

更多内容>>

W3C标准翻译

欢迎您加入W3C翻译计划,了解W3C标准和文档翻译情况,帮助提供不同语言的W3C标准规范及文档的志愿者翻译及W3C授权翻译,惠及全球技术社区。

更多内容>>

贡献榜

我们通过贡献榜,感谢您积极参与W3C的标准制定及审阅工作、提供标准及技术文章的中文翻译、参与各类技术研讨会。

更多内容>>

W3C 中文开发者社区

W3C中国目前正在不断加大全球W3C工作的参与力度,并推动了一系列以了解中国行业需求、引导标准制定为主要目的的工作组(WG)、兴趣组(IG)和社区组(CG)。
Web中文兴趣组 | MiniApps工作组 | MiniApps生态社区组 | 弹幕特别任务组 | 中国信息无障碍社区组 | 中文数字出版社区组 | 数据可视化社区组 | 中文文字布局需求特别任务组

更多内容>>

会员链接

相关资源需要使用 W3C账号登录后使用

首页 | 加入工作组 | 申请W3C账号 | 最新会员消息

开发者资源

合作伙伴

  • 北京航空航天大学
  • 北航计算机学院
  • w3ctech