使用 Xamarin Forms 打开 Windows 商店

Open Windows Store with Xamarin Forms

我正在使用 C# 在 Xamarin Forms 上开发 Windows Phone 8 应用程序。

我需要在点击 DisplayAlert 后打开商店。

if (condition)
{
  await DisplayAlert(title,body,button);
  //link to store for upgrading the app version
}

但我被困在这个问题上,我无法在 displayalert 中对按钮执行 "on click listener",而且我不知道如何 link 到它外面的商店(以残酷的方式和不太优雅的方式)

but i'm stuck in this, i cannot do an "on click listener" of the button inside the displayalert and i don't know how to link to the store outside it (in a brutal and less elegant way)

对于你的需求,你可以通过dependence service优雅的实现。

public interface OpenStore
{
 Task<bool> OpenStore();
}

在您的客户端项目中实现 OpenStore 接口。

[assembly:Dependency(typeof(IOpenStore))]

public class IOpenStore : OpenStore
{
    public async Task<bool> OpenStore()
    {
        var storeUri = new Uri("ms-windows-store://home");
        var success = await Windows.System.Launcher.LaunchUriAsync(storeUri);
        return success;
    }
}

用法

var answer = await DisplayAlert("Question?", "Would you like to open store", "Yes", "No");   
if (answer)
{
  await  DependencyService.Get<OpenStore>().OpenStore();
}

您的应用可以使用 ms-windows-store: URI 方案来启动 Windows Store 应用。打开产品详情页面、产品评论页面和搜索页面等。例如,以下 URI 打开 Windows Store 应用程序并启动 Store 的主页。

ms-windows-store://home/

有关详细信息,see Launch the Windows Store app