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

时间:2016-08-31 04:52:52

标签: c# windows win-universal-app uwp rate

我的应用程序构建已基本完成,我想添加我的应用程序按钮, 添加了一个按钮和代码,但当我点击率现在应用程序关闭..

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

AppScreen

弹出

Popup

2 个答案:

答案 0 :(得分:8)

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

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

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

using Windows.ApplicationModel;

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

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

答案 1 :(得分:4)

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