将您的技术与 AMP 集成
感谢您有兴趣为 AMP 做出贡献!我们感谢您的参与,共同使网络成为以用户为中心的平台。
发布商已创建了超过 14 亿个 AMP 文档,托管在超过 75 万个唯一域上。只有通过与 AMP 集成的 100 多家第三方技术公司的支持,才能实现如此增长。
如果您是网络上发布商或广告商的技术提供商,我们邀请您为 AMP 添加支持!您的客户可以继续利用您的技术,同时努力实现我们构建更好网络的愿景。
本文档概述了 AMP 对第三方的期望,并定义了贡献级别。
贡献指南
所有一般贡献均受 CONTRIBUTING.md 中 AMPHTML 的通用指南约束。我们希望第三方在不同程度上测试、维护和更新他们的贡献。
要符合纳入资格,所有贡献级别都必须
- 满足 英文维基百科的知名度要求。
- 维持或提高 AMP 向发布商和用户承诺的相同类型的服务级别。
- 以高质量创建。
- 为其客户创建故障排除渠道。
- 针对 AMP 的生产和 Canary 版本提供良好的集成测试覆盖率。
- 实现不存在的目的。
有 3 个第三方贡献级别。级别取决于添加的逻辑量
- 组件逻辑:决定 AMP 组件核心特性和功能的代码。
- 第三方逻辑:特定于第三方的代码。此逻辑使组件能够利用第三方服务。
添加到 AMP 存储库的逻辑越多,尤其是特定于第三方的逻辑,贡献级别就越高。较高的贡献级别需要第三方做出更多承诺。
一级和二级贡献在第三方之间共享组件。如果有组件实现与您的业务类似的目的,请考虑重用该组件。这需要的精力少得多,而且更易于长期维护。
在确定哪个贡献级别满足您的用例后,打开一个 GitHub 问题以开始。
一级贡献
一级贡献利用现有组件的功能逻辑。它们将第三方特定的逻辑作为自定义 JavaScript 加载到跨域 iframe 中。例如,许多广告网络通过 amp-ad
组件提供广告,但通过自己的逻辑控制广告的呈现方式。
第三方使用提供的 API 将配置或功能添加到现有扩展,以实现其功能。如果不存在这样的组件,他们可以提出一个新的组件。
签入 AMP 存储库的唯一第三方特定逻辑是第三方配置。向现有的一级贡献添加新的第三方通常不需要设计审核。第三方可以遵循组件的集成文档,例如 将广告网络集成到 AMP 中。
对第三方的期望
- 独立维护和提供供应商的自定义 JavaScript。
- 为其配置提供测试并响应问题。
- 为开发人员提供故障排除渠道。
- 响应与其服务相关的任何和所有错误报告。
一级示例
广告提供商应阅读 开发概述 和 开发人员说明,了解如何将您的支持添加到 amp-ad
。根据贵公司提供的广告技术,您可能会发现 这些集成说明 很有用。
有许多广告提供商已添加对 amp-ad 等广告相关功能的支持。这是一个来自广告网络 Criteo 的 示例拉取请求。
二级贡献
二级贡献利用现有组件的功能逻辑。所有逻辑都签入 AMP 存储库,并且不能将自定义 Javascript 加载到 iframe 中。例如,分析提供商将其配置添加到 amp-analytics
组件,包括跟踪数据(例如用户点击)的端点。
第三方将配置或功能(例如新的 API)添加到现有组件,以实现其功能。如果不存在这样的组件,他们可以提出一个新的组件。
所有业务逻辑都签入 AMP 存储库,但签入的唯一第三方特定逻辑是第三方配置。如果组件使用第三方提供的配置文件,则无需设计审核。如果第三方配置实现新功能或新组件,则需要通过 AMP 的设计审核。
对第三方的期望
- 向现有的二级贡献添加新的第三方服务通常不需要设计审核。第三方可以遵循该组件的文档。
- 为二级贡献提出新组件将需要具有可供其他第三方服务共享的功能逻辑。
二级示例
AMP Analytics 允许您根据您配置的触发器将事件发送回您的服务器。我们编写了 分析集成指南 ,以帮助您入门。
如果您只需要向跟踪 URL 添加带有动态参数的跟踪像素,请查看 amp-pixel
。请务必在您的支持页面上记录使用情况,以供可能希望将您的技术与 AMP 结合使用的开发人员使用。
有分析提供商已添加对 amp-analytics 的支持。这是来自分析提供商 Parse.ly 的 示例拉取请求。
如果您提供呼叫跟踪测量服务,您的用例可能会通过 amp-call-tracking
得到支持。此组件通过执行 CORS 请求来替换号码,从而动态替换超链接中的电话号码,以启用呼叫跟踪。
要了解有关此组件如何为您工作的更多信息,请参阅 参考文档。
三级贡献
三级贡献引入了一个新的第三方特定组件。这仅适用于第三方无法执行以下操作的情况
- 为其用例找到现有的组件。
- 请求功能改进以满足其用例。
- 提出适用于其他第三方服务的组件。
对第三方的期望
- 编写并提出设计审核。
- 测试必须能够捕获中断。
- 修复组件中断的问题,或者请求帮助。
- 提供带有代码示例的详尽文档。
- 维护和更新文档。
- 为 AMP 开发人员提供故障排除渠道,以请求帮助。