是否可以在运行时获取UWP应用程序协议名称?怎么样?

时间:2017-07-06 18:09:29

标签: uwp protocols

我正在开发一个可以使用协议激活或启动的应用程序。该协议通常在声明选项卡下的appxmanifest文件中设置。我想要做的是在运行时获取在appxmanifest中声明的协议名称。那有可能吗?如果是,我怎样才能获得这个价值?

我需要获取应用程序自己的协议,以便我可以告诉其他应用程序这是回复给我的协议。

1 个答案:

答案 0 :(得分:0)

这只是一个想法 - 我还没有验证,但它可能会有效。您可以从应用中访问应用的AppxManifest.Xml,如下所示:

var uri = new System.Uri("ms-appx:///AppxManifest.xml"); 
StorageFile file = await Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(uri); 
using (var ras = await file.OpenReadAsync()) 
{
    // 
}

然后,您可以读取.xml文件并解析uap:protocol元素。下面的代码是访问.xml并使用xdocument解析的好例子。

FeedbackOverlay.xaml.cs