我知道您可以访问Windows.ApplicationModel.Package.Current
并使用 Id.Name 来获取名称,但这似乎是我清单中的包名称。一串相当长的数字和字母。
如何从代码内部获取清单中的包显示名称、发布者显示名称。我宁愿让这个动态。
有什么建议么?
我知道您可以访问Windows.ApplicationModel.Package.Current
并使用 Id.Name 来获取名称,但这似乎是我清单中的包名称。一串相当长的数字和字母。
如何从代码内部获取清单中的包显示名称、发布者显示名称。我宁愿让这个动态。
有什么建议么?
清单是一个 xml 文件,因此您可以使用 Linq to XML 对其进行查询:
using System.Xml.Linq;
using Windows.ApplicationModel;
using Windows.Storage;
private async void GetInfo(object sender, RoutedEventArgs e)
{
StorageFile file = await Package.Current.InstalledLocation.GetFileAsync("AppxManifest.xml");
string manifestXml = await FileIO.ReadTextAsync(file);
XDocument doc = XDocument.Parse(manifestXml);
XNamespace packageNamespace = "http://schemas.microsoft.com/appx/2010/manifest";
var displayName = (from name in doc.Descendants(packageNamespace + "DisplayName")
select name.Value).First();
var publisherDsplName = (from publisher in doc.Descendants(packageNamespace + "PublisherDisplayName")
select publisher.Value).First();
string output = "DisplayName: " + displayName + ", PublisherDisplayName: " + publisherDsplName;
txtBlock.Text = output;
}