从应用启动“反馈中心”

你可以通过向启动反馈中心的通用 Windows 平台(UWP)应用添加控件(例如按钮)来鼓励客户留下反馈。 反馈中心是预安装的应用,提供一个位置来收集 Windows 和已安装应用的反馈。 通过反馈中心为你的应用提交的所有客户反馈都会在合作伙伴中心的 反馈报告 中汇总并呈现给你,以便你可以在一份报告中看到客户提交的问题、建议和点赞结果。

若要从应用启动反馈中心,请使用 Microsoft Store Services SDK提供的 API。 建议使用此 API 从应用中的 UI 元素启动反馈中心,该元素遵循我们的设计准则。

注释

反馈中心仅在运行 Windows 版本 10.0.14271 或更高版本的设备上可用,这些 Windows 基于桌面和移动 设备系列。 建议仅在用户的设备上提供反馈中心时,才会在应用中显示反馈控件。 本主题中的代码演示如何执行此操作。

如何从应用启动反馈中心

若要从应用启动反馈中心,请执行以下操作:

  1. 安装 Microsoft Store Services SDK
  2. 在 Visual Studio 中打开项目。
  3. 在解决方案资源管理器中,右键单击项目的 引用 节点,然后单击 添加引用
  4. 引用管理器中,展开 通用 Windows 并单击 扩展
  5. 在 SDK 列表中,单击 Microsoft Engagement Framework 旁边的复选框,然后单击 确定
  6. 在项目中,添加要向用户显示的控件以启动反馈中心,例如按钮。 建议按如下所示配置控件:
  • 将控件中显示的内容的字体设置为 Segoe MDL2 Assets

  • 将控件中的文本设置为十六进制 Unicode 字符代码 E939。 这是 Segoe MDL2 Assets 字体中建议的反馈图标的字符代码。

  • 将控件的可见性设置为隐藏。

    注释

    建议默认隐藏反馈控件,仅当反馈中心在用户的设备上可用时,才会在初始化代码中显示它。 下一步演示如何执行此操作。

    以下代码演示 按钮 的 XAML 定义,如上文所述。

    <Button x:Name="feedbackButton" FontFamily="Segoe MDL2 Assets" Content="&#xE939;" HorizontalAlignment="Left" Margin="138,352,0,0" VerticalAlignment="Top" Visibility="Collapsed"  Click="feedbackButton_Click"/>
    
  1. 在托管反馈控件的应用页的初始化代码中,使用 StoreServicesFeedbackLauncher 类的静态 IsSupported 方法来确定反馈中心是否在用户的设备上可用。 反馈中心仅在运行 Windows 10 操作系统版本 10.0.14271 或更高版本的设备上可用,这些操作系统基于桌面和移动 设备系列

    如果此属性返回 true,则使控件可见。 以下代码演示如何为 按钮执行此操作。

    if (Microsoft.Services.Store.Engagement.StoreServicesFeedbackLauncher.IsSupported())
    {
        this.feedbackButton.Visibility = Visibility.Visible;
    }
    

    注释

    虽然反馈中心当前不支持在 Xbox 设备上运行,但是运行 Windows 版本 10.0.14271 或更高版本的 Xbox 设备上,IsSupported 属性目前返回 true。 这是在 Microsoft Store Services SDK 的未来版本中将修复的已知问题。

  2. 在用户单击控件时运行的事件处理程序中,获取 StoreServicesFeedbackLauncher 对象,并调用 LaunchAsync 方法来启动反馈中心应用。 此方法有两个重载形式:一个不带参数,另一个接受包含元数据的字典,元数据以键值对的形式用于与反馈关联。 以下示例演示如何在 单击 事件处理程序中启动 按钮的反馈中心。

    private async void feedbackButton_Click(object sender, RoutedEventArgs e)
    {
        var launcher = Microsoft.Services.Store.Engagement.StoreServicesFeedbackLauncher.GetDefault();
        await launcher.LaunchAsync();
    }
    

反馈 UI 的设计建议

为了启动反馈中心应用,我们建议在您的应用中添加一个 UI 元素(例如按钮),该元素使用来自 Segoe MDL2 Assets 字体的字符代码 E939 显示以下标准反馈图标。

Segoe MDL2 Assets 字体中带有字符代码 E939 的标准反馈图标。

我们还建议您在您的应用中使用以下一个或多个位置选项来链接到反馈中心。

  • 直接在应用栏中 。 根据你的实现,你可能希望仅使用图标或添加文本(如下所示)。

    应用程序的屏幕截图,该应用程序的右上角有反馈图标,旁边有“反馈”标签。

  • 应用中的设置。 这是一种更微妙的方式来提供对反馈中心的访问权限。 在下面的示例中,“反馈”链接显示为“应用”下的链接之一。

    “设置”页的屏幕截图,其中“反馈”链接显示在“应用”下。

  • 事件驱动的浮出菜单。 当你想要在启动到 Windows 反馈中心之前查询客户的特定问题时,这非常有用。 例如,当您的应用使用某个特定功能后,您可能会向客户发出一个关于他们对该功能满意度的特定问题。 如果客户选择响应,你的应用将启动反馈中心。