我正在开发适用于 Windows 10 和 Xbox One 设备的 UWP(通用 Windows 平台)应用程序。该应用程序是单用户应用程序。我试图在运行时确定活动登录用户的唯一标识符——只是一个没有任何个人身份信息的 ID。StoreContext 类的文档表明我应该能够通过检查User
默认StoreContext
对象的属性来确定这一点;具体来说,该NonRoamableId
属性似乎合适。但是,在我运行应用程序的每个上下文中(调试、部署、Windows、Xbox),StoreContext 的User
属性始终为null
. 这是预期的吗?我找不到任何其他方法来确定此信息。
注意:我知道UserWatcher类及其在系统上查询用户的方法。但是,出于以下原因,我想避免使用它:
- 通过使用这些查询方法向应用程序公开的属性不足以确定哪个
User
是与 current 关联的StoreContext
,这意味着这样的解决方案很容易出错。 - 以这种方式查询用户信息会导致权限弹出窗口,如果应用程序需要读取个人身份信息,这很有意义,但由于我只是在寻找一个程序化的唯一标识符,这似乎不是必需的.
我正在针对 Windows 10 Creators' Update SDK (10.0.15063) 进行开发。
编辑 2017 年 11 月 16 日
这看起来可能是现在已修复的 UWP 错误。在没有代码更改的情况下,我现在看到应用启动时User
附加了一个非空对象。LaunchActivatedEventArgs
相应地接受了答案。