Windows Phone 8.1商店应用 - 链接到商店

13

在Windows 8.1应用中,我们可以使用ms-windows-store协议链接到商店应用程序。

var storeURI = new Uri("ms-windows-store:PDP?PFN=<package family name>");
await Windows.System.Launcher.LaunchUriAsync(storeURI);

在Windows Phone 8.1中是否有类似的方法?我不想链接到应用商店上应用程序的网页 (http://windowsphone.com/s?appId=appGUID),然后打开应用商店。我希望直接打开应用商店中的应用程序。

3个回答

32
在Windows Phone 8.1中,我们可以使用ms-windows-store协议链接到商店。
到详细页面:
var uri = new Uri(string.Format("ms-windows-store:navigate?appid={0}", appid));
await Windows.System.Launcher.LaunchUriAsync(uri);

查看页面:

var uri = new Uri(string.Format("ms-windows-store:reviewapp?appid={0}", appid));
await Windows.System.Launcher.LaunchUriAsync(uri);

搜索页面:

var uri = new Uri(string.Format(@"ms-windows-store:search?keyword={0}",keyword));
await Windows.System.Launcher.LaunchUriAsync(uri);

我遇到了访问被拒绝的异常。 - zezba9000
尝试使用此处解释的直接链接: Windows Phone 8内置应用程序的URI方案。对我来说,使用URI zune:navigate?appid=[app ID] 可以正常工作。 - Walter Jr.
我得到了“商店中没有此项目”的错误信息,请帮忙解决。变量appid = Windows.ApplicationModel.Store.CurrentApp.AppId; 我正在传递应用程序ID。 - Kartiikeya
你应该在开发者中心传递应用程序ID。 - Chris Shao

0

看起来还不错,但它也适用于非Silverlight的Windows Phone 8.1应用程序吗?如果是这样,我该如何使用它?我在我的引用中找不到它。 - Reza Jooyandeh
上面的 MSDN 链接说它与 7.0 到 8.1 版本都兼容。 - Z .
3
我在这里找到了它:http://msdn.microsoft.com/en-us/library/windows/apps/hh394017%28v=vs.105%29.aspx,它适用于“Windows Phone 8和Windows Phone Silverlight 8.1 | Windows Phone OS 7.1”,所以显然不适用于Windows Phone 8.1(非Silverlight版本)。 - Reza Jooyandeh
这是我唯一可行的方法(在WP8.1设备上运行WP8.0应用程序)。为了澄清一下,ContentIdentifier属性不是来自Visual Studio项目程序集信息中的GUID,也不是WMAppManifest.xaml中的产品ID。正确的值是您可以在Windows Phone仪表板中的应用程序列表中找到的值,在“应用程序管理”>“应用程序标识”下(它具有GUID的形式)。 - kibitzerCZ
应用以上代码后,此商品在店内不可用。 - Kartiikeya

-1
 await Launcher.LaunchUriAsync(
          new Uri("ms-windows-store:reviewapp?appid=723e25d1-a0ee-4824-b389-XXXXXX"));

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接