如何添加我的应用按钮(UWP)

Shu*_*ahu 1 c# windows rate win-universal-app uwp

我的应用程序大楼几乎完成,我想添加我的应用程序按钮,添加一个按钮和代码,但当我点击率现在应用程序关闭..

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>
Run Code Online (Sandbox Code Playgroud)

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();
    }
Run Code Online (Sandbox Code Playgroud)

AppScreen

AppScreen

弹出

弹出

Mar*_*und 8

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

建议的解决方案是使用备用Windows应用商店URI,该URI引用包系列名称以标识应用.你可以使用这个名字Windows.ApplicationModel.Package.Current.Id.FamilyName(一个很长的名字,不是它:-))

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

using Windows.ApplicationModel;
Run Code Online (Sandbox Code Playgroud)

现在您调用Windows应用商店进行审核,如下所示:

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