WP8.1功能中缺少ID_CAP_IDENTIY_DEVICE

本文关键字:CAP IDENTIY DEVICE ID 功能 WP8 | 更新日期: 2023-09-27 18:15:26

为什么在Wp8.1中缺少能力ID_CAP_IDENTITY_DEVICE ?由于这个原因,我无法获得与WP8中获得的设备ID匹配的设备ID !

这反过来又在应用程序升级中造成了很多问题!

现在我使用

HardwareToken token = HardwareIdentification.GetPackageSpecificToken(null);
IBuffer hardwareId = token.Id;
HashAlgorithmProvider hasher = HashAlgorithmProvider.OpenAlgorithm("MD5");
IBuffer hashed = hasher.HashData(hardwareId);
string DeviceId = CryptographicBuffer.EncodeToHexString(hashed);
return DeviceId ;

之前我们使用

DeviceExtendedProperties.TryGetValue("DeviceUniqueId", out uniqueId);
result = (byte[])uniqueId;
string id = Convert.ToBase64String(result).Replace("=", "").Replace("/", "").Replace("+", "");
return id + "";

请建议一个解决方案,以便我们可以在两个平台上获得相似的id !

感谢所有的帮助和建议。

WP8.1功能中缺少ID_CAP_IDENTIY_DEVICE

如果你正在开发一个Windows Phone 8.1 XAML应用程序,它不支持ID_CAP_IDENTITY_DEVICE,因为它可以部署在任何设备上,如手机,平板电脑或台式机。所以你可以使用hardwareidentifier类来获取设备ID

private string GetDeviceID()
        {
            HardwareToken token = HardwareIdentification.GetPackageSpecificToken(null);
            IBuffer hardwareId = token.Id;
            HashAlgorithmProvider hasher = HashAlgorithmProvider.OpenAlgorithm("MD5");
            IBuffer hashed = hasher.HashData(hardwareId);
            string hashedString = CryptographicBuffer.EncodeToHexString(hashed);
            return hashedString;
        }

这可能有帮助。使用应用特定硬件ID (ASHWID)实现每个设备应用逻辑的指南