【问题标题】:Device unique id from C++/CX来自 C++/CX 的设备唯一 ID
【发布时间】:2013-03-27 15:43:04
【问题描述】:
我可以从 WP8 上的 C++/CX 代码获得device unique id(UDID) 吗?或者如果我不这样做,我该怎么办?我已经尝试过使用DeviceExtendedProperties(它不起作用,可能是.net only 类)。
【问题讨论】:
标签:
c++
.net
windows-phone-8
c++-cx
【解决方案1】:
您可以使用HardwareIdentification.GetPackageSpecificToken 方法获取特定于您的应用的设备唯一ID。它有一些复杂性,因为 ID 的值取决于许多系统因素,例如可用内存、连接的外围设备(想想蓝牙耳机)、网络连接等 - 请务必阅读链接的文档!对硬件 ID can be found here 的组件进行更深入的讨论。
对于您的应用和特定设备的组合而言,该值将是唯一的,这很可能足以满足应用开发的目的。
请注意,此 API 需要 WP 8.1“Windows 运行时”应用,并且不适用于 WP8 Silverlight 应用。
using namespace Windows::System::Profile;
...
IBuffer^ nonce = ...; // optional, see documentation
HardwareToken^ hwid = HardwareIdentification::GetPackageSpecificToken(nonce);
// HardwareToken has a few properties, but the one you're likely interested
// in is HardwareToken.
IBuffer^ id = hwid->Id;