如何添加评价我的应用程序按钮 (UWP)

How To Add Rate My App Button (UWP)

我的应用程序构建即将完成,我想为我的应用程序添加评分按钮, 添加了一个按钮和代码,但是当我点击 rate now 时,应用程序关闭了..

XAML

<Page.BottomAppBar>
    <CommandBar Background="#2b2b2b" Foreground="White">
        <CommandBar.Content>
            <Grid/>
        </CommandBar.Content>            
        <AppBarButton Icon="Emoji2" Label="Rate" Foreground="White" Name="AppBarRateButton" Click="AppBarRateButton_Click" />            
    </CommandBar>
</Page.BottomAppBar>

C#

       private async void AppBarRateButton_Click(object sender, RoutedEventArgs e)


    {
        MessageDialog RateDialog = new MessageDialog("Rate this app?");
        RateDialog.Commands.Add(new UICommand("Rate now", async (command) =>
        {
            await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-windows-store:reviewapp?appid=9wzdncrdmtk6" + 
                Windows.ApplicationModel.Store.CurrentApp.AppId));
        }));
        RateDialog.Commands.Add(new UICommand("Not now"));
        RateDialog.DefaultCommandIndex = 0;
        RateDialog.CancelCommandIndex = 1;
        await RateDialog.ShowAsync();
    }

AppScreen

弹出

您也可以使用 Universal Rate reminder。从 Nuget 获取。

我认为原因是您为应用程序使用了错误的标识符。

推荐的解决方案是使用备用 Windows Store URI,它引用包系列名称来标识应用程序。您可以使用 Windows.ApplicationModel.Package.Current.Id.FamilyName 获得此名称(一个很长的名称,不是吗:-))

首先,您必须将 using 语句添加到代码文件的顶部:

using Windows.ApplicationModel;

现在您可以像这样调用 Windows 商店进行审核:

await Launcher.LaunchUriAsync( 
    new Uri( $"ms-windows-store://review/?PFN={Package.Current.Id.FamilyName}" ) );