转自:wp imei
由于WP8SKD不提供获取机子IMEI的方法,所以无法得到机子IMEI,但是SDK提供一另一个获取唯一ID的方法,在Microsoft.Phone.Info.DeviceExtendedProperties里面的DeviceUniqueId。
通过这个方法可以获得.
参考 wp8sdk有关DeviceExtendedProperties Class的部分。
{
object DeviceUniqueID;
byte[] DeviceIDbyte = null;
if (DeviceExtendedProperties.TryGetValue( "DeviceUniqueId", out DeviceUniqueID))
DeviceIDbyte = ( byte[])DeviceUniqueID;
string DeviceID = Convert.ToBase64String(DeviceIDbyte);
return DeviceID;
}
但是为了更加保险,推荐加上用户的Windows Live ID一起保存,这样绝对是唯一的了。
DeviceExtendedProperties 类
2013/3/11
允许应用程序获取有关其运行的设备的信息。
Namespace: Microsoft.Phone.Info
程序集: Microsoft.Phone(位于 Microsoft.Phone.dll 中)
DeviceExtendedProperties 类型公开以下成员。
警告: |
---|
在 Windows Phone OS 7.0 中,此类被用来查询特定于设备的属性。在 Windows Phone OS 7.1 中,DeviceExtendedProperties 的大多数属性已弃用,而应改用新的DeviceStatus 类。但是,在适当时,您仍然可以使用以下任何未弃用的属性。 |
下表列出了可以使用此方法查询的可用属性。
属性名 | 值类型 | 说明 |
---|---|---|
ApplicationCurrentMemoryUsage | 一个长整型值。 | 当前应用程序的内存使用量,以字节为单位。 此属性已被弃用。请改用 ApplicationCurrentMemoryUsage 属性。 |
ApplicationPeakMemoryUsage | 一个长整型值。 | 当前应用程序的高峰内存使用量,以字节为单位。 此属性已被弃用。请改用 ApplicationPeakMemoryUsage 属性。 |
ApplicationWorkingSetLimit | 一个长整型值。 | 工作集限制(以字节为单位)。 此属性应用于 Windows Phone OS 7.1 及更高版本。 |
DeviceFirmwareVersion | 一个字符串。 | 设备上运行的固件版本。该版本与可使用 System.Environment 检索的操作系统版本不同。建议该值为可以以System.Version 结构的形式进行分析的字符串,并且当安装新固件时,该字符串按逻辑方式递增,但这不是必需的。该值可以为空。 此属性已被弃用。请改用 DeviceFirmwareVersion 属性。 |
DeviceHardwareVersion | 一个字符串。 | 设备上运行的硬件版本。该版本与可使用 System.Environment 检索的操作系统版本不同。建议该值为可以以System.Version 结构的形式进行分析的字符串,并且当发布新硬件时,该字符串按逻辑方式递增,但这不是必需的。该值可以为空。 此属性已被弃用。请改用 DeviceHardwareVersion 属性。 |
DeviceManufacturer | 一个字符串。最多 256 个字符。 | 设备制造商的名称。该字符串没有标准格式。建议对同一制造商的设备使用相同的值,但不强制这样做。该值可以为空。 此属性已被弃用。请改用 DeviceManufacturer 属性。 |
DeviceName | 一个字符串。最多 256 个字符。 | 设备的名称。该字符串没有标准格式。该值可以为空。 此属性已被弃用。请改用 DeviceName 属性。 |
DeviceTotalMemory | 一个长整型值。 | 设备的物理 RAM 大小,以字节为单位。该值将小于设备内存的实际数量,但可以用于确定内存占用要求。 此属性已被弃用。请改用 DeviceTotalMemory 属性。 |
DeviceUniqueId | 字节数组。长度为 20 个字节。 | 设备的唯一哈希。对于所有应用程序,该值都将保持不变,并且如果用新版本的操作系统更新手机也不会更改。应用程序不应使用该值来标识用户,因为即使设备的所有权发生了转移,设备 ID 也将保持不变。 |
IsApplicationPreinstalled | 布尔值。 | 指示该应用是否与设备图像一起进行预安装。从 Windows Phone 商店 下载的应用将总是返回值 false。 |
OriginalMobileOperatorName | 一个字符串。 | 一个字符串代表移动运营商的名称。 |
功能
如果您在应用中使用此 API,您必须在应用清单中指定下列功能。否则,您的应用可能无法正常工作,或可能意外退出。
ID_CAP_IDENTITY_DEVICE | Windows Phone 8, Windows Phone OS 7.1 |
有关更多信息,请参见 Windows Phone 应用的功能和硬件要求。