是否可以获得SIM MSISDN& Windows Phone应用程序开发中的IMSI号码?
我已经完成了一些问答,但很久以前他们都被问到了。
答案 0 :(得分:0)
你可以获得SIM MSISDN& Windows Phone应用程序中的IMSI编号。请注意,您应手动编辑应用程序Package.appxmanifest,如下所示:
<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">
......
<Capabilities>
<rescap:Capability Name="cellularDeviceIdentity" />
</Capabilities>
cellularDeviceIdentity功能允许应用访问蜂窝识别数据。 任何人都可以请求访问这些capabilities商店提交。
您可以使用MobileBroadbandModem
类来获取所有CurrentDeviceInformation
,以下是核心代码。
using Windows.Networking.NetworkOperators;
......
public IReadOnlyList<SimCard> GetSimCards()
{
var results = new List<SimCard>();
var modem = MobileBroadbandModem.GetDefault();
if (modem == null)
{
return results.AsReadOnly();
}
var account = modem.CurrentAccount;
if (account == null)
{
return results.AsReadOnly();
}
var simCard = new SimCard();
simCard.ICCID = account.CurrentDeviceInformation.SimIccId;
simCard.IMSI = account.CurrentDeviceInformation.SubscriberId;
simCard.MSISDN = modem.DeviceInformation.TelephoneNumbers;
simCard.MCC = ExtractMCC(simCard.IMSI);
simCard.MNC = ExtractMNC(simCard.IMSI);
simCard.MSID = ExtractMSID(simCard.IMSI);
results.Add(simCard);
return results.AsReadOnly();
}
我已将code sample上传到git hub。请检查!