[英]Get 'Application Display Name' in C# / UWP
根据文档我可以使用这个: Windows.ApplicationModel.AppDisplayInfo.DisplayName
但我收到错误: An object reference is required for the non-static field, method, or property 'AppDisplayInfo.DisplayName
我无法添加“AppDiagnostics”功能或使用包显示名称,这似乎是最常见的解决方案。 是文档错误还是我做错了什么?
如果您只想要当前项目的DisplayName
,则可以使用以下代码而无需声明appDiagnostics
功能:
string displayName = Windows.ApplicationModel.AppInfo.Current.DisplayInfo.DisplayName;
如果您想要所有正在运行的应用程序的DisplayName
,包括 UWP 应用程序、Win32 应用程序、系统服务等,您需要先在 manifest 中添加appDiagnostics
功能。
检查添加appDiagnostics
功能的步骤:
Package
添加xmlns:rescap
并在rescap
中添加IgnorableNamespaces
。 然后,在Capabilities
添加appDiagnostics
功能。 <Package xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap mp rescap">
<Capabilities>
<rescap:Capability Name="appDiagnostics" />
</Capabilities>
</Package>
appDiagnostics
能力属于受限能力,需要获得用户的许可。 首次调用AppDiagnosticInfo.RequestInfoAsync()
等诊断 API 时将触发用户同意提示。 或者用户可以打开设置面板,找到隐私选项并设置应用程序诊断。请注意,如果用户拒绝权限,则 API 将仅返回有关当前应用程序的信息。
DisplayName
。var list = await AppDiagnosticInfo.RequestInfoAsync();
foreach (var info in list)
{
string name = info.AppInfo.DisplayInfo.DisplayName;
}
如果有人需要它用于 WinUI 3
Windows.ApplicationModel.Package.Current.DisplayName
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.