使用以下代码:
await Windows.System.Launcher.LaunchUriAsync(new Uri(@"ms-windows-store://review/?ProductId=9wzdncrfj2wl"));
我在Microsoft Store中打开Facebook应用程序 . 该页面上有一个“启动”按钮 . 用它运行应用程序 .
如何使用产品ID运行应用程序?
我设法用这段代码打开应用程序:
await Windows.System.Launcher.LaunchUriAsync(new Uri("fb:post?text=foo"));
但我想用ID打开它 .
我找到了这段代码,但它无法正常工作:
await Windows.System.Launcher.LaunchUriAsync(new Uri(@"ms-windows-store://pdp/?ProductId=9wzdncrfj2wl"));
如何用ID打开已安装的应用?或者,如果有另一种方法来检查App是否已安装,如果是,则启动它,如果不是,则将其显示在商店中,以便用户可以手动安装它 . 我正在开发的应用程序是Windows 10 UWP ...
我有一种情况,没有应用程序的URI,所以我必须通过它的ProductID或ProductFamily打开它...
所以,这是打开该应用程序的快捷方式目标:C:\ Windows \ explorer.exe shell:AppsFolder \ A88BB54F.N1info_gvc78jvcn5cg0!App
我有没有机会在UWP应用程序中使用它来启动应用程序?
有没有人从Windows应用商店的LAUNCH按钮获得链接?所以,我会把它放在URI中,就像从GET按钮链接一样:
ms-windows-store:PDP?PFN=A88BB54F.N1info_gvc78jvcn5cg0&referrer=unistoreweb&webig=39694073-f9af-436f-a82b-abb9d9f644f0&muid=097C7AA3CA2C6EE22D237359CE2C689A&websession=c9916902dd014ec2b5a9e0390a28c26d
我这样使用它:
await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-windows-store:PDP?PFN=A88BB54F.N1info_gvc78jvcn5cg0&referrer=unistoreweb&webig=39694073-f9af-436f-a82b-abb9d9f644f0&muid=097C7AA3CA2C6EE22D237359CE2C689A&websession=c9916902dd014ec2b5a9e0390a28c26d"));
它正在商店中显示应用程序 .
感谢名单 .
3 回答
如果要从另一个应用程序启动一个应用程序,目标应用程序必须具有已注册的URI激活并处理该情况 . 更多关于你可以阅读at MSDN .
商店中有很多应用已经注册了URI方案,互联网上有一些列表,但是我实际上和哪些应用程序可以使用UWP .
您可以调用Launcher.QueryUriSupportAsync来查看是否已安装该应用程序 . 此方法将返回LaunchQuerySupportStatus enumeration值,您可以决定按此值打开应用程序或Windows应用商店 .
请查看以下代码以获取详细信息:
可以使用包管理器:
并为Package.appxmanifest添加一项功能:
了解有关受限功能的更多信息:https://docs.microsoft.com/en-us/windows/uwp/packaging/app-capability-declarations#restricted-capabilities