Copyright © 2023 World Wide Web Consortium. W3C® liability, trademark and permissive document license rules apply.
本文档是 Web 应用清单 规范的补充成员注册表,这些成员为 应用清单 提供了额外的元数据。这些元数据可以用于数字商店或其它发布、分发该 Web 应用的渠道,或者在 安装 Web 应用时,用于增强安装对话框。
本节描述了本文档在出版时的状态。当前所有 W3C 出版物名单和此技术报告的最新修订版本可在 W3C 技术报告索引中找到,网址:https://www.w3.org/TR/。
本文档持续更新,每次有更改都会发布新快照。有兴趣的读者可以在 manifest-app-info GitHub 仓库 订阅变更,甚至可提议新的清单成员。
本文档由 Web 应用工作组 以Note 路径作为集体注释发布。
本集体注释由 Web 应用工作组 认可,但不是由 W3C 本身或其成员认可。
本文件为草案,可能随时被更新、替换或废止。不建议将本文档作为除“进行中的工作”之外的引用来源。
W3C 专利政策 不对本文档施加任何许可要求或义务。
本文档受 2023年6月12日 W3C 流程文件 规范管理。
随着 Web 应用可通过更多服务(如数字商店、搜索结果)获取,并与原生应用一同展示,Web 应用呈现得与原生应用类似就变得非常重要。Web 应用可以在清单中定义自身的 name 和 icons,但这些字段无法提供足够的信息,帮助用户判断是否想要安装该应用。用户已经习惯于了解这些应用的更多详细信息,本文档定义了一些额外的清单成员以满足这一需求。
以下成员是对 应用清单成员的补充。这些成员被归类为补充成员,是因为它们不会在运行时应用在 Web 应用上(即它们仅为提示性,不影响用户代理如何展示已安装的 Web 应用)。所有成员均为可选,可以像如下示例一样添加在应用清单的根部。
{
"name": "Donate App",
"categories": ["fundraising", "donations"],
"description": "This app helps you donate to worthy causes.",
"iarc_rating_id": "e84b072d-71b3-4d3e-86ae-31a8ce4e53b7",
"screenshots": [{
"src": "images/screenshot.png",
"sizes": "800x600",
"platform": "windows",
"label": "Lots of organizations to donate to"
}]
}
由于应用清单为 JSON 格式,本文规范的成员类型为 对象、数组与 字符串,详见 JSON 数据交换格式第 2 版。
categories
成员是数组,包含描述该 Web 应用所属类别的字符串。目的是为展示 Web 应用的目录或商店提供参考,这些平台会尽力选择最合适的类别(或类别)将 Web
应用归类。像搜索引擎和元关键词一样,目录和商店并不要求必须采纳这个提示。
建议清单作者使用小写字母。
已知类别列表:
如需添加更多类别,请在 manifest-app-info GitHub 仓库 提 bug 或提交拉取请求。
description
成员为 字符串,允许开发者描述 Web 应用的用途,并作为可访问性描述被用于已安装的 Web 应用。
iarc_rating_id
成员为 字符串,表示该 Web 应用的 国际年龄分级联盟(IARC) 认证码。可用于判断适合应用的用户年龄段。
IARC 证书可通过参与的应用商店获得,用于发布 Web 应用。
成员只接受一个认证码。如果分发的产品未发生实质性变化(如没有基于 UA 检测分发完全不同的代码)且其它商店支持此认证码,则可以在多家支持商店共用此码。
iarc_rating_id
更多 IARC 相关信息可参考:IARC 工作原理 和 开发者如何获得 IARC 评级。
screenshots
成员是
screenshots 对象数组,用于展示 Web 应用的常见使用场景。
screenshots 对象是一个 ImageResource 对象,并包含下文所定义的额外成员。
label
成员是 字符串,作为该可访问名称,用于 screenshots 对象
的可访问性。强烈建议为每个截图设置 label,该成员可作为截图的替代文本。
{
"screenshots": [{
"src": "images/screenshot.png",
"sizes": "800x600",
"form_factor": "wide",
"label": "With Software, you can select a part of your screen and take a screenshot in seconds."
}]
}
platform
成员是 字符串,用于表示该截图所适用的分发平台。只有当截图仅适用于特定场景时,建议作者才设置此成员。
作者应当仅在截图并非代表通用体验时才设置 platform,例如截图包含仅特定操作系统可用的功能时,才使用针对指定平台的值。
用户代理可以展示任意数量的截图,但不应显示与自身平台无关的截图(如 Google Play 不应显示 iOS 专用截图)。
如果未设置 platform,用户代理应假定该截图适用于所有平台。
用户代理可通过截图的长宽比(sizes)判断截图是否适合展示。
操作系统专用 platform 取值列表:
与应用分发平台相关的 platform 取值列表:
如需添加更多 platform,请在 manifest-app-info GitHub 仓库 提 bug 或提交拉取请求。
form_factor
成员是
字符串,表示适用截图的设备屏幕形态。仅在截图适用于特定场景时建议使用此成员。
仅在截图不能代表通用体验时才建议用 form_factor,如布局/设计会因为屏幕方向不同而不同,可分别用 "narrow" 或 "wide"。
用户代理可以展示任意数量的截图,但不应显示与自身 form factor 不符的截图(如手机不应展示 "wide" form_factor 的截图)。
若未设置 form_factor,用户代理应假定截图适用于所有形态。
form_factor 可用值列表:
本节为非规范性内容。
预期作者将根据Manifest 规范中概述的方法对本文档中所有文本字符串内容进行本地化处理。
感谢 Rob Dolin 率先推动了大量相关工作,特别是 iarc_rating_id 成员,并感谢 Kenneth Rohde Christiansen 对这些想法的审核和支持。
我们还要感谢以下贡献者:Christian Liebel、Julien Cayzac、Marcos Cáceres、Thomas Steiner、吴晓倩、唐娅婧。
categories
§2.1
description
§2.2
form_factor
§3.3
iarc_rating_id
§2.3
label
§3.1
platform
§3.2
screenshots
§2.4
icons)
name)
ImageResource
sizes (用于 ImageResource)
Referenced in: