使用 Microsoft Store Services SDK 与客户互动

Microsoft Store Services SDK 提供的功能可帮助你在通用 Windows 平台 (UWP) 应用中吸引客户,例如向应用发送定向的通知和在应用中运行 A/B 试验。 此 SDK 是 Visual Studio 2015 及更高版本的 Visual Studio 的扩展。

注意

若要在 UWP 应用中显示广告,请使用Microsoft 广告 SDK而不是 Microsoft Store Services SDK。 广告库已从 Microsoft Store Services SDK 移动到Microsoft 广告 SDK。 有关详细信息,请参阅 应用中的显示广告。

Microsoft Store Services SDK 支持的方案

Microsoft Store Services SDK 目前支持以下 UWP 应用方案。 有关 API 参考文档,请参阅 Microsoft Store Services SDK API 参考

场景 说明
使用 A/B 测试在 UWP 应用中运行试验 在 通用 Windows 平台 (UWP) 应用中运行 A/B 测试,以在向所有人发布功能之前衡量某些客户的功能的有效性。 在合作伙伴中心中定义某个试验后,请使用 StoreServicesExperimentVariation 类在应用中为试验获取变体、使用该数据修改正在测试的功能的性能,然后使用 LogForVariation 方法将视图事件和转换事件发送到开发人员中心。 最后,使用合作伙伴中心查看结果并管理试验。
从 UWP 应用启动反馈中心 使用 UWP 应用中的 StoreServicesFeedbackLauncher 类将 Windows 10 和 Windows 11 客户定向到反馈中心,他们可以提交问题、建议和投票。 然后,在合作伙伴中心内的反馈报告中管理此反馈。
配置 UWP 应用以接收合作伙伴中心推送通知 使用 UWP 应用中的 StoreServicesEngagementManager 类注册应用以接收使用合作伙伴中心发送给客户的定向推送通知。
在合作伙伴中心为使用情况报告记录 UWP 应用中的自定义事件 使用 UWP 应用中的 StoreServicesCustomEventLogger 类在合作伙伴中心记录与应用相关联的自定义事件。 然后,在合作伙伴中心的使用情况报告的“自定义事件”部分中查看自定义事件的总发生次数。

先决条件

Microsoft应用商店服务 SDK 需要:

  • Visual Studio 2015 或更高版本。
  • 随 Visual Studio 版本一起安装的适用于通用 Windows 应用的 Visual Studio 工具。

安装 SDK

在开发计算机上安装 Microsoft Store Services SDK 有两个选项:

  • MSI安装程序 可通过此处提供的 MSI 安装程序安装该 SDK。
  • NuGet 包 你可以将 SDK 安装为 NuGet 包。

Microsoft定期发布具有性能改进和新功能的 Microsoft Store Services SDK 的新版本。 如果已有使用 SDK 且想要使用最新版本的项目,请在开发计算机上下载并安装最新版本的 SDK。

通过 MSI 安装

若要通过 MSI 安装程序安装 Microsoft Store Services SDK,请执行以下操作:

  1. 关闭 Visual Studio 的所有实例。

  2. 如果以前安装了 Microsoft Store Engagement 和盈利 SDK、通用广告客户端 SDK 或广告中介扩展,请立即卸载这些 SDK。 (可选)打开 命令提示符 窗口并运行以下命令以清除可能随 Visual Studio 一起安装的任何较旧 SDK 版本,但可能不会显示在计算机上的已安装程序列表中:

    MsiExec.exe /x{5C87A4DB-31C7-465E-9356-71B485B69EC8}
    MsiExec.exe /x{6AB13C21-C3EC-46E1-8009-6FD5EBEE515B}
    MsiExec.exe /x{6AC81125-8485-463D-9352-3F35A2508C11}
    
  3. 下载并安装 Microsoft Store Services SDK。 安装可能需要几分钟时间。 确保并等待进程完成。

  4. 重新启动 Visual Studio。

  5. 如果现有项目引用任何早期版本的 Microsoft Store Services SDK、Microsoft 广告 SDK、通用广告客户端 SDK 或 Microsoft Store Engagement 和盈利 SDK 中的库,建议在 Visual Studio 中打开项目并清理并重新生成项目(在 解决方案资源管理器 中,右键单击项目节点,然后选择“清理”,然后再次右键单击项目节点,然后选择“重新生成”。

否则,如果在项目中首次使用 SDK,则现在可以将 程序集引用添加到项目

通过 NuGet 安装

若要通过 NuGet 安装 Microsoft Store Services SDK 库,请执行以下操作:

  1. 关闭 Visual Studio 的所有实例。

  2. 如果以前安装了 Microsoft Store Engagement 和盈利 SDK、通用广告客户端 SDK 或广告中介扩展,请立即卸载这些 SDK。 (可选)打开 命令提示符 窗口并运行以下命令以清除可能随 Visual Studio 一起安装的任何较旧 SDK 版本,但可能不会显示在计算机上的已安装程序列表中:

    MsiExec.exe /x{5C87A4DB-31C7-465E-9356-71B485B69EC8}
    MsiExec.exe /x{6AB13C21-C3EC-46E1-8009-6FD5EBEE515B}
    MsiExec.exe /x{6AC81125-8485-463D-9352-3F35A2508C11}
    
  3. 启动 Visual Studio 并打开想要在其中使用 Microsoft Store Services SDK 的项目。

    注意

    如果项目已包含早期 MSI 安装的 SDK 中的库引用,请从项目中删除这些引用。 这些引用旁边会显示警告图标,因为它们引用的库已在前面的步骤中删除。

  4. 在 Visual Studio 中,依次单击项目管理 NuGet 包

  5. 在搜索框中,键入 Microsoft.Services.Store.Engagement 并安装 Microsoft.Services.Store.Engagement 包。 安装完包后,保存解决方案。

    注意

    如果“输出”窗口报告一个“安装包”错误,指示指定的路径太长,则可能需要将 NuGet 配置为将包提取到路径比默认位置短的备用位置。 为此,请将 repositoryPath 该值添加到计算机上的 nuget.config 文件,并将其分配给可以提取 NuGet 包的短文件夹路径。 有关详细信息,请参阅 NuGet 文档中的本文 。 或者,可以尝试将 Visual Studio 项目移动到具有较短路径的备用文件夹。 此问题也可能是由于全局包路径过长造成的。 在这种情况下,将 globalPackagesFolder 值添加到 nuget.config 文件中。

  6. 关闭包含项目的 Visual Studio 解决方案,然后重新打开解决方案。

  7. 如果项目已引用来自通过 NuGet 安装的较早版本 Microsoft Store Services SDK 的库,并且你已将项目更新到更新版本的 SDK,则我们建议你清除并重新生成项目(在解决方案资源管理器中,右键单击项目节点并选择“清除”,然后再次右键单击项目节点并选择“重新生成”)。

否则,如果在项目中首次使用 SDK,则现在可以将 程序集引用添加到项目

将程序集引用添加到项目

通过 MSI 安装程序或 NuGet 安装 Microsoft Store Services SDK 后,请按照这些说明在 UWP 项目中引用 SDK 程序集。

  1. 在 Visual Studio 中打开项目。

    注意

    如果项目是面向 任何 CPU 的 JavaScript 应用,请更新项目以使用特定于体系结构的生成输出(例如 x86)。

  2. 在“解决方案资源管理器”中,右键单击“引用”,然后选择“添加引用…”

  3. 引用管理器中,展开通用 Windows,单击“扩展,然后选择Microsoft Engagement Framework 旁边的复选框。 这样,便可以在 Microsoft.Services.Store.Engagement 命名空间中使用 API

  4. 单击 “确定”

注意

如果通过 NuGet 安装了 SDK 库,则项目将包含 Microsoft.Services.Store.Engagement 参考。 Microsoft.Services.Store.Engagement 引用表示 NuGet 包(而不是其中的库),可以忽略它。

了解 SDK 中的框架包

Microsoft Store Services SDK 中的 Microsoft.Services.Store.Engagement.dll 库配置为 框架包。 此库包含 Microsoft.Services.Store.Engagement 命名空间中的 API。

由于此库是框架包,这意味着在用户安装使用此库的应用版本后,每当我们发布具有修补程序和性能改进的新版本库时,此库都会在其设备上自动更新Windows 更新。 这有助于确保客户始终在其设备上安装最新版本的库。

如果我们发布引入此库中新 API 或功能的 SDK 新版本,则需要安装最新版本的 SDK 才能使用这些功能。 在此方案中,还需要将更新的应用发布到应用商店。