1. 程式人生 > >起調UWP的幾種方法

起調UWP的幾種方法

protoc -c mea accep each target img prot .html

原文:起調UWP的幾種方法

由於種種原因吧,我需要使用一個WPF程序起調一個UWP程序,下面總結一下,給自己個備份。

啟動UWP程序的關鍵是協議啟動

給我們的UWP應用添加一個協議,like this:

技術分享圖片

然後使用協議啟動該UWP有一下幾種方式:

1. 使用UWP的Launcher API

// Create the URI to launch from a string.
var uri = new Uri("protocolname:");

// Launch the URI.
bool success = await Windows.System.Launcher.LaunchUriAsync(uri);

這裏涉及到一個問題:怎麽在WPF中使用UWP的API,可參考鏈接:https://blogs.windows.com/buildingapps/2017/01/25/calling-windows-10-apis-desktop-application/#Zgu8WtZa81OyUzyR.97

2.使用PackageManager,也是UWP的API

//var manager = new PackageManager();
//var p = manager.FindPackagesForUser("", PackageId);
//var ls = await p.ToList()[0].GetAppListEntriesAsync();
//foreach (var item in ls)
//{
// await item.LaunchAsync();
//}

這裏感謝下vbfool大神的悉心指導!

其中的PackageId是包系列名(PackageFamilyName)

3.使用Process.Start(new ProcessStartInfo("protocolname:"));

4.使用命令行

like:>start myapplication:protocol-parameter,參考https://docs.microsoft.com/zh-cn/windows/uwp/xbox-apps/automate-launching-uwp-apps#a-nameaccepting-argumentsa接受參數

鏈接中還介紹了另外一種方式:啟動激活(不支持命令行參數),在此不再贅述.

寫了幾個月的WPF發現把UWP的東西忘完了,哎,如此弱雞!

起調UWP的幾種方法