从应用启动“反馈中心”
可以通过向启动反馈中心的 通用 Windows 平台 (UWP) 应用添加控件(如按钮)来鼓励客户留下反馈。 反馈中心是预安装的应用,提供一个位置来收集 Windows 和已安装应用的反馈。 将收集通过“反馈中心”针对应用提交的所有客户反馈,并在合作伙伴中心的反馈报告中向你呈现,以便你可以在单个报告看到客户已提交的问题、建议和投票。
若要从应用启动反馈中心,请使用Microsoft应用商店服务 SDK 提供的 API。 建议使用此 API 从应用中的 UI 元素启动反馈中心,该元素遵循我们的设计准则。
注意
反馈中心仅适用于运行基于桌面和移动设备 系列的 Windows 版本 10.0.14271 或更高版本的设备。 建议仅在用户的设备上提供反馈中心时,才会在应用中显示反馈控件。 本主题中的代码演示如何执行此操作。
如何从应用启动反馈中心
若要从应用启动反馈中心,请执行以下操作:
- 安装 Microsoft Store Services SDK。
- 在 Visual Studio 中打开项目。
- 在“解决方案资源管理器”中,右键单击你的项目的“引用”节点,然后单击“添加引用”。
- 在“引用管理器”中,展开“通用 Windows”并单击“扩展”。
- 在 SDK 列表中,单击“Microsoft 协议框架”旁边的复选框,然后单击“确定”。
- 在项目中,添加要向用户显示的控件以启动反馈中心,例如按钮。 建议按如下所示配置控件:
将控件中显示的内容的字体设置为 Segoe MDL2 Assets。
将控件中的文本设置为十六进制 Unicode 字符代码 E939。 这是 Segoe MDL2 Assets 字体中建议的反馈图标的字符代码。
将控件的可见性设置为隐藏。
注意
建议默认隐藏反馈控件,仅当反馈中心在用户的设备上可用时,才会在初始化代码中显示它。 下一步演示如何执行此操作。
以下代码演示了按上文所述配置的按钮的 XAML 定义。
<Button x:Name="feedbackButton" FontFamily="Segoe MDL2 Assets" Content="" HorizontalAlignment="Left" Margin="138,352,0,0" VerticalAlignment="Top" Visibility="Collapsed" Click="feedbackButton_Click"/>
在托管反馈控件的应用页的初始化代码中,使用 StoreServicesFeedbackLauncher 类的静态 IsSupported 方法来确定反馈中心是否在用户的设备上可用。 反馈中心仅在运行基于桌面和移动设备系列的 Windows 10 OS 版本 10.0.14271 或更高版本的设备上可用。
如果此属性返回 true,则使控件可见。 以下代码演示如何对 按钮执行此操作。
if (Microsoft.Services.Store.Engagement.StoreServicesFeedbackLauncher.IsSupported()) { this.feedbackButton.Visibility = Visibility.Visible; }
注意
尽管目前 Xbox 设备上不支持反馈中心, 但 IsSupported 属性当前在运行 Windows 版本 10.0.14271 或更高版本的 Xbox 设备上返回 true 。 这是在 Microsoft Store Services SDK 的未来版本中将修复的已知问题。
在用户单击控件时运行的事件处理程序中,获取 StoreServicesFeedbackLauncher 对象并调用 LaunchAsync 方法以启动反馈中心应用。 此方法有两个重载:一个没有参数,另一个重载接受包含要与反馈关联的元数据的键和值对字典。 以下示例演示如何在 Button 的 Click 事件处理程序中启动反馈中心。
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 中的以下标准反馈图标。
我们还建议使用以下一个或多个放置选项链接到应用中的反馈中心。
直接在应用栏中。 根据你的实现,你可能希望仅使用图标或添加文本(如下所示)。
在应用的设置中。 这是一种更微妙的方式来提供对反馈中心的访问权限。 在下面的示例中,“反馈”链接显示为“应用”下的链接之一。
在事件驱动的浮出控件中。 如果要在启动到Windows 反馈中心之前查询客户的特定问题,这非常有用。 例如,在应用使用特定功能后,你可能会提示客户对该功能的满意度有特定问题。 如果客户选择响应,你的应用将启动反馈中心。