Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
开发完扩展后,可以将其打包并发布到 Visual Studio Marketplace。 应用市场是一个全球性资源库,存储来自 Microsoft 的专用和公共扩展程序、集成以及其他产品/服务。
注意
有关你的扩展程序清单文件中提供的发现属性的信息(这些属性有助于用户发现并了解你的扩展程序),请参阅扩展程序清单参考。
先决条件
在发布到 Marketplace 之前,必须满足以下要求列表。
| 类别 | 要求 |
|---|---|
| 打包工具 | 安装扩展打包工具 (TFX)。 从命令提示符运行 npm install -g tfx-cli。 |
| 图像权限 | 确保你有权使用任何图像,如图标、徽标、屏幕截图等。 |
| 市场概述 | 包括一个全面的 overview.md 文件,以描述您在市场中上架的产品。 |
| 扩展图标 | 包括表示集成、公司或组织的扩展的图标,大小至少为 128x128 像素(PNG 或 JPEG)。 |
| Microsoft产品名称 | 对Microsoft产品使用全名(例如,Azure DevOps 而不是 AzDO 或其他缩写)。 |
| 品牌名称 | 请勿在扩展名称中使用品牌名称。 |
创建发布商
每个扩展或集成(包括来自Microsoft的扩展或集成)都必须具有发布者。 任何人都可以创建发布者并在其下发布扩展。 还可以与其他用户(例如开发团队)共享发布者访问权限。
如果你不是现有发布者的一部分,请选择“ + 创建发布者”。
输入发布者名称;根据条目自动填充 ID 字段。
注意
- 对于多字节字符,请确保发布者名称在 16 个字符之内。
- 保存发布者 ID:需要在扩展的配置文件中使用它。
如果未提示创建发布者,请滚动到“相关网站”下的“发布扩展”。
- 设置唯一的发布者标识符,例如
mycompany-myteam。 请在清单中的publisher属性中使用此值。 - 设置显示名称,例如
My Team。
查看 市场发布者协议,然后选择“ 创建”。
创建发布者后,可以管理项目,尽管发布前不会显示任何项目。
打包扩展
若要上传扩展,请将其打包为与 VSIX 2.0 兼容的 .vsix 文件。 Microsoft 提供了一个跨平台命令行界面 (CLI) 来打包和发布扩展。
打开扩展清单文件 (
vss-extension.json),将publisher字段的值设置为发布者的 ID。 例如:{ ... "id": "my-first-extension", "publisher": "AnnetteNielsen", ... }在命令提示符下,从扩展目录运行 TFX 工具的打包命令。
npx tfx-cli extension create系统将显示一条消息,指示扩展已成功打包:
=== Completed operation: create extension === - VSIX: C:\my-first-extension\AnnetteNielsen.my-first-extension-1.0.0.vsix - Extension ID: my-first-extension - Extension Version: 1.0.0 - Publisher: AnnetteNielsen
注意
每次更新时,都要在清单中增加扩展或集成的版本。
使用 --rev-version 命令行开关。 此开关递增扩展的 补丁 版本号,并将新版本保存到清单。
检查包大小
在 vsix 打包完成后,检查其大小。 如果大于 50 MB,则需要对其进行优化。 为此,请参阅以下注意事项:
- 通过在扩展包中声明一次删除重复的常见依赖项。
- 在运行时或安装期间提取依赖项,而不是将它们包含在包中。 请考虑使用工具安装程序库在运行时拉取工具依赖项。 此方法按版本缓存工具以供专用代理使用,避免每次构建都下载。 工具安装程序库在断开连接的方案(无 Internet)中不起作用,应在任务说明或文档中提及。
- 在任务中使用 WebPack 来去除未使用的依赖项(进行摇树优化)。
发布扩展
一旦扩展被打包,就可以将其上传到发布者下的 Marketplace。 在publisher中指定的 标识符必须与上传扩展的发布者的标识符匹配。
在管理门户中,从页面顶部的下拉菜单中选择发布者。
选择新建扩展>Azure DevOps。
拖放文件或选择文件以找到在上一个打包步骤中创建的 VSIX 文件,然后选择“上传”。
快速验证后,扩展将显示在已发布的扩展列表中。 别担心,扩展仅对你可见。
此时,你的扩展对任何帐户都不可见。 若要使它对其他人可见,需要共享扩展。
注意
Microsoft 对发布的每个新的和更新的扩展都运行病毒扫描。 在扫描结果完全清除之前,我们不会在“Marketplace”上发布扩展供公众使用。 这样,我们也可以避免在 Marketplace 页面上出现不恰当或冒犯性的内容。
分享扩展
在 Azure DevOps 中安装扩展之前,请与组织共享扩展。 若要共享扩展程序,请执行以下任务:
扩展程序现在可以安装到此组织中。
安装扩展
若要安装共享扩展,请执行以下步骤。
在 Marketplace 中,选择扩展以打开其概述页。
注意
由于扩展是专用的,因此只有你和与之共享的组织成员才能看到此页面。
选择“免费获取”以启动安装过程。 从下拉菜单中选择与你共享扩展的组织。
选择“安装”。
祝贺你! 你已将扩展安装到组织中,并已准备好试用。
试用扩展
在安装向导结束时选择“转到组织”,转到安装扩展的组织的主页 ()。
https://dev.azure.com/{organization}刷新浏览器。
打开组织设置,然后选择扩展。
应在“已安装”选项卡上看到新扩展。
调试扩展程序
若要使用 Visual Studio 或浏览器开发人员工具调试扩展,请通过添加 baseUri 属性来更改清单。 此操作加快了开发速度,而无需每次更改源代码时重新部署扩展。
{
...
"baseUri": "https://localhost:44300",
...
}
更改清单时,它会从本地 Web 服务器实例加载扩展。 例如,Visual Studio 中的 IISExpress。 更改清单后,只部署和安装此调试扩展一次。
注意
在 SSL 模式下运行本地 Web 服务器,因为 Azure DevOps 要求从安全源提供网页。 否则,在扩展 IFRAME 加载期间,浏览器控制台中会出现错误。
更新扩展
若要更新已发布的扩展,请执行以下步骤:
提示
更新扩展,而不是删除并重新上传扩展。 我们建议维护两个扩展: publisher.extension 是在市场中公开供客户使用的扩展,而 publisher.extension-dev 是私人扩展,仅与您的组织共享,用于开发和测试。
不需要两个源代码副本, 只需为每个扩展维护单独的清单文件。 打包时,向 tfx-cli 工具提供相应的清单文件。 有关详细信息,请参阅 TFX 扩展命令。
- 从显示的项列表中选择扩展。
- 右键单击并选择更新以更新开发版本,例如
publisher.extension-dev。 - 验证扩展程序。
- 对生产版本应用相同的更新,例如
publisher.extension。 - 找到您扩展的 .vsix 文件并上传它。
Azure DevOps 会自动安装已具有扩展的所有帐户的更新版本。 新安装还会收到最新版本。
公开扩展程序
在为 Marketplace 开发扩展或集成时,请将其保密。 这会将扩展的可见性限制为已与之共享的特定帐户。
若要公开提供扩展程序,请在清单中将 public flag 设置为 true。
认证
要在 Marketplace 上公开上市,集成或扩展必须符合以下资格:
- 与 Azure DevOps 配合使用或扩展程序其功能。
- 你或你的公司拥有、开发并被授权分发和宣传集成或扩展。
- 该扩展程序或集成处于积极维护状态。
Microsoft 还可能要求演示并查看为你的 Marketplace 条目计划的内容。
最佳发布者
“最佳发布者”计划仅适用于具有 Azure DevOps 扩展或集成的发布者。 不适用于 Visual Studio IDE 和 Visual Studio Code 扩展发布者。
“最佳发布者”计划通过模范策略、质量、可靠性和支持来表彰对客户和 Marketplace 做出承诺的发布者。 成为“最佳发布者”后,所有公开产品/服务都会显示“最佳发布者”徽章。
“最佳发布者”要求
Marketplace 中的“最佳发布者”计划旨在帮助你自信地评估或获取 Azure DevOps 扩展和集成。 “最佳发布者”徽章意味着发布者通过模范策略、质量、可靠性和支持向客户和 Marketplace 做出承诺。 它适用于具有一个或多个全局 Azure DevOps 扩展或集成的发布者,不适用于 Visual Studio IDE 和 Visual Studio Code 扩展发布者。
Marketplace 在仔细审查发布者的以下参数后,将徽章分配给发布者:
- 隐私策略
- 许可策略
- 支持策略
- 文档
- 问答响应能力
- 其产品/服务的评级和评论
- 其产品/服务的活跃下载和安装数量
- 管理 Azure DevOps 的至少一个公共扩展
- 具有超过 5,000 次安装和超过 1,000 次活跃安装的公共扩展
当你从“最佳发布者”那里获得扩展时,你可以期待获得及时的支持和良好的整体体验。 查看来自“最佳发布者”的产品/服务。
有关将策略添加到产品/服务的详细信息,请参阅扩展清单。
更新发布者配置文件。
通过发布者配置文件,可以在一个位置展示你的所有产品/服务以及与发布者相关的关键信息。 若要提供显示在配置文件中的信息,请执行以下步骤:
a。 使用你在 Visual Studio Marketplace 中发布和管理产品/服务的帐户登录到 https://marketplace.visualstudio.com/manage/publishers。
b. 选择发布者,并完成“详细信息”选项卡中的“关于你”部分。
c. 保存更改,然后选择“查看配置文件”,以查看其对使用者的显示方式。 您可以使用这个个人主页来推广您的产品或服务。
注意
此计划会认证发布者,而不是其扩展和集成的软件或安全性。 建议在评估发布者的产品/服务时查看 安全信息 。 如果你从最佳发布者获得了扩展,却对体验感到不满意,请考虑先与发布者接洽。
申请成为最佳发布者
- 使用在市场中发布和管理产品/服务的帐户登录到 市场管理门户 。
- 选择发布者并转到其 “顶级发布者 ”选项卡。让选项卡显示一个或多个全局 Azure DevOps(服务器/服务)扩展或集成。
- 如果满足之前列出的要求,并且是出版商的拥有者,则可以申请该项目。 申请后,会向市场团队发送一封电子邮件,以审查你的案例。 他们在 10 个工作日内回答后续步骤、澄清问题或授予徽章。
在授予徽章之前,团队可能会考虑其他参数,例如您的产品/服务的积极采纳率、安装量和启动次数,以及评分与评论。 Microsoft随时保留授予、拒绝或撤销顶级发布者徽章的权利。
发布者是顶级发布者后,其所有未来的更新和产品/服务必须满足之前列出的要求。
回复应用市场中对扩展程序的评论
你可以在 Visual Studio Marketplace 中回复客户针对你的扩展留下的评论。 如果你拥有以下权限之一:所有者、创建者或参与者,请在评论旁边查找并选择“回复”。
你只能留下一条回复。 避免将评论用作支持论坛。 如果需要更多详细信息,请提供供评论者联系的支持别名。 然后,你可以从外部解决他们的问题,并通过解决方案更新你的回复。
发布者响应指南
让 Visual Studio Marketplace 成为一个开放、吸引人、尊重和乐于助人的地方,供客户查找、试用、安装和查看扩展。 沟通在保持社区健康方面起着重要作用。 为了帮助创建此环境,下面提供了发布者响应客户评论的指南。 深入思考你的客户互动,并反思 Marketplace 试图创造的客户体验精神。
- 为客户评论预留评审空间。 仅使用“回复”来响应评论。
- 尊重所有客户意见。 在没有辩论、批评或争论的情况下将评论视为反馈。
- 确保响应增加价值,并与客户的评论相关。
- 专注于精确地解决问题或难题。 如果需要更多详细信息,请让客户通过电子邮件与你联系,而不是在评论中讨论。 解决问题时,请使用解决方法更新回复。 你可以编辑回复,就像客户可以编辑他们的评论一样。
- 标记任何不适当的评论,如垃圾邮件、滥用或冒犯性内容,以供我们的评论。
请求撤销评论
作为发布者,如果报告的问题是由于 Marketplace 或基础平台造成的,你可以上诉撤销评论。 如果问题属实,Marketplace 管理员将撤销评级。 可以在扩展中心页面的评级和评论部分“上诉”。
取消发布扩展
如果不再需要在市场中提供免费扩展,可以取消发布免费扩展。
在以下情形中,请考虑从应用市场中移除你的扩展程序:
- 你开发了一个新的扩展,不再想要提供当前扩展。
- 扩展有问题,并且你想要将其从市场中删除,直到解决问题。
- 错误地将扩展发布为公共扩展。
要取消发布或删除扩展,必须满足某些标准:
| Action | 要求 |
|---|---|
| 取消发布 | 仅免费扩展可以取消发布。 |
| 移除 | 你的扩展程序必须拥有零 (0) 次安装记录,才可以被移除。 |
重要
如果因法律或安全问题而必须删除扩展,请联系开发人员社区的客户支持。 我们会审查请求,然后手动删除扩展。
若要在市场中再次提供扩展,请从菜单中选择 “发布 ”。
如果扩展没有安装,可以选择将其完全从市场中删除。 为此,请从菜单中选择“ 删除 ”。 无法撤销此操作。
扩展报告中心
在 Visual Studio Marketplace 中提供扩展后,可以使用 “报表 ”功能。 使用此功能,可以跟踪和分析扩展的执行方式并采取所需作。 若要访问扩展中心,请浏览到 发布者页面 ,然后选择扩展详细信息页上的“ 报表 ”链接。
购置
可以在此选项卡中查看所选时间段内与购置相关的数据。
- 总体购买的选定时间段内的聚合购买
- 按 Azure DevOps 连接安装以获取免费扩展的扩展下载量拆分的聚合购买
- 按 Azure DevOps 连接购买以获取付费扩展的试用版拆分的聚合购买
- Azure DevOps 及连接服务器的购买扩展页面浏览量的每日趋势
- 从页面浏览量到用户获取的转化率
对于付费扩展,购买和试用的所有交易详细信息都提供日期、组织名称、试用结束日期和数量。 可以使用 “联系人” 作与用户通信。 有关详细信息,请参阅本文后面的 “联系人” 部分。
卸载
可以查看以下统计信息:
- 有多少组织卸载了您的扩展?
- 卸载扩展的每日趋势
- 卸载期间共享的详细反馈
- 首要卸载原因
可以使用搜索文本和日期来分析和从详细反馈中获取更多见解。
对于付费扩展,可以使用 “联系人” 作与用户通信。 本文稍后提供的“联系人”部分提供了更多详细信息。
评级和评论
此选项卡提供以下信息:
- 所选时间段的平均评分与总体评分
- 按审阅者数计算的平均评分
- 平均评级的每日趋势
详细信息部分在事务视图中提供所有评论和回复。
可以回复评论或编辑以前的响应,并更好地管理与扩展用户的互动。 如果报告的问题是由于市场或基础平台,还可以 呼吁 取消评级。 如果问题有效,我们将取消评级。
管理参与度
“问答”选项卡展示了扩展用户所有问题的快照,未回复的问题显示在顶部。 可以回复或编辑以前的响应,以便更好地管理与扩展用户的参与。
导出到 Excel
报表页中提供的所有数据元素也可以 XLS 格式下载,以帮助创建自己的自定义报表。
联系人
对于付费扩展,可以使用 “联系人” 作与用户通信。 此功能仅适用于在扩展上具有参与者+ 访问权限的发布者。
市场代理与用户进行第一次通信,因为我们的隐私策略不允许直接共享客户电子邮件地址。 只有选择加入通信的用户才能收到电子邮件。 发送沟通后,组织的最后联系日期会被更新。
重要
遵循有关事务和促销沟通的指导。 发现发布者正在发送促销通信或垃圾邮件给用户,将被列入阻止名单,并失去对其所有扩展程序的 联系人功能的访问权。
事务通信:传达继续使用扩展或服务所需的关键信息的电子邮件,例如:
- 关键安全通知
- 交易确认
- 产品召回通知
- 特定反馈请求
- 服务停用通知
促销电子邮件:用于营销扩展、产品、服务、网站或活动的电子邮件,例如:
- 活动或网络广播的邀请
- 有关新营销或合作伙伴计划的信息
- 提供获取增值内容的机会
- 包含促销内容的新闻稿
有关详细信息,请参阅 市场发布者协议。
| 术语 | DESCRIPTION |
|---|---|
| 页面浏览量 | 扩展详细信息页面的浏览总次数。 重复观看次数会被计入。 |
| Azure DevOps 服务安装 | 安装扩展的组织总数。 在同一组织中,重复安装会被计数。 |
| Azure DevOps Server 安装 | 安装扩展的集合总数。 对同一集合的多次安装会被计数。 断开连接的服务器数据不可用。 |