如何在c#
中使用Windows Phone 8.1或UWP从Windows Phone获取IMEI和IMSI号码我使用了TAPIib.dll和OpenNETCF.Telephony.dll,但这两个dll仅用于webforms。请帮助我使用C#
获取Windows Phone设备的IMEI号How do I find imei number in windows 8.1 phone programmatically? 此链接适用于Windows Phone 8或Windows窗体。 但我们需要Windows Phone 8.1和UWp
有没有办法使用C#
获取Windows Phone 10设备的IMEI号答案 0 :(得分:1)
MobileEquipmentId就是你想要的。来自MSDN:
对于GSM设备,MobileEquipmentId值将是国际移动设备识别码(IMEI),最长可达15位。对于CDMA设备,MobileEquipmentId值必须是电子服务号码(ESNs0,长度为11位,或移动设备标识符(MEID),长度为17位。
我猜你不知道如何使用这个API。请遵循以下方式:
添加xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
和Ignorable Namespaces如下:
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap mp rescap">
添加cellularDeviceIdentity功能如下:
<Capabilities>
<Capability Name="internetClient" />
<rescap:Capability Name="cellularDeviceIdentity" />
</Capabilities>
然后,您可以使用以下代码获取IMEI号码:
var modem = MobileBroadbandModem.GetDefault();
var imei = modem?.DeviceInformation.MobileEquipmentId;
但是,请注意This functionality is only available to mobile operator apps and Windows Store app given privileged access by mobile network operators.
即使您可以在本地测试机器中使用此API。如果要将应用程序发布到Windows应用商店,则需要移动网络运营商进行特权访问。