StoreServicesFeedbackLauncher is not working

3

Since Windows 10, Version 1809 (Build 17763), the start of the Feedback Hub from a UWP app has ended with the following error: -1073741819 (0xc0000005) 'Access violation'

if (StoreServicesFeedbackLauncher.IsSupported())
{
      FeedbackRadioButton.Visibility = Visibility.Visible;
}

private async void LaunchFeedbackHub(object sender, RoutedEventArgs e)
{
    try
    {                
        var launcher = StoreServicesFeedbackLauncher.GetDefault();
        await launcher.LaunchAsync();
    }
    catch (Exception ex)
    {
        Debug.WriteLine(ex.Message);
    }
}

There is a reference to the Microsoft.Engagment.Framework and the Microsoft.Services.Store.SDK is installed. The problem occurs in both debug mode and release mode.

What could that be?

c#
uwp
windows-10
asked on Stack Overflow Nov 19, 2018 by kendoo • edited Nov 20, 2018 by Ashish Kamble

2 Answers

4

Update 2/16: Microsoft has reversed course and fixed this in Microsoft.Services.Store.Engagement 10.1901.28001.


Original answer:

This API is notoriously unreliable.

If possible, I recommend switching to a simpler protocol launching approach. Some examples (that induce the default activation type of URIFeedbackHome) have been provided below.

Launch Feedback Hub:

feedback-hub:

Launch Feedback Hub, with [Category: Apps] and [Subcategory: EarTrumpet]

feedback-hub://?appid=40459File-New-Project.EarTrumpet_1sdd7yawvg6ne!EarTrumpet

Launch Feedback Hub, with the Profile tab as active tab

feedback-hub://?tabid=6

There's no public information about the other more complex scenarios (e.g. providing key-value metadata, attaching screenshots, etc.) at this time.

answered on Stack Overflow Jan 22, 2019 by Rafael Rivera • edited Feb 17, 2019 by Rafael Rivera
0

Thanks for your feedback, I have reported this to related team. Please pay attention to the follow-up version update. Currently, you could use the following wrokaround.

switch (AnalyticsInfo.VersionInfo.DeviceFamily)
{
    case "Windows.Mobile":

        await Launcher.LaunchUriAsync(new Uri("windows-feedback:?contextid=30"));
        break;
    case "Windows.Desktop":

        await Launcher.LaunchUriAsync(new Uri("windows-feedback:?contextid=143"));
        break;

    default:
        break;
}
answered on Stack Overflow Nov 20, 2018 by Nico Zhu - MSFT • edited Nov 21, 2018 by Nico Zhu - MSFT

User contributions licensed under CC BY-SA 3.0