【问题标题】:How to get IMEI Number in IOS 7 devices programmatically如何以编程方式在 IOS 7 设备中获取 IMEI 号码
【发布时间】:2013-10-16 12:58:20
【问题描述】:

我编写了在 iPhone/iPad 设备中获取 IMEI 号码的代码,它在 IOS 6 上运行良好。一旦我将操作系统版本更新到 IOS 7,应用程序在执行 IMEI 号码检索代码时崩溃。在 IOS 7 设备中获取 IMEI 是否需要进行任何更改?

这是我的代码:

struct CTResult it;
CFMutableDictionaryRef kCTDict;
conn = _CTServerConnectionCreate(kCFAllocatorDefault, ConnectionCallback,NULL);
_CTServerConnectionCopyMobileEquipmentInfo(&it, conn, &kCTDict);
NSLog (@ "kCTDict is %@", kCTDict);
CFStringRef meid = CFDictionaryGetValue(kCTDict, CFSTR("kCTMobileEquipmentInfoMEID"));
NSLog (@ "kCTMobileEquipmentInfoMEID is %@", meid);
CFStringRef mobileId = CFDictionaryGetValue(kCTDict,CFSTR("kCTMobileEquipmentInfoCurrentMobileId"));
NSLog (@ "kCTMobileEquipmentInfoCurrentMobileId is %@", mobileId);

【问题讨论】:

  • NSString *imeinumber = [[NetworkController sharedInstance] IMEI];

标签: iphone ios ipad mobile imei


【解决方案1】:

我不太确定 iOS7 中的 IMEI 号码 Apple 改变了他们提供唯一标识符的方式。但是您不应该首先获得 IMEI,因为您使用的是私有 API,这违反了 Apple 规则。

要获得设备的唯一标识符,您应该使用 UDID。这将始终为您在同一部手机上运行的所有应用返回相同的 ID。

【讨论】:

  • 实际上,UDID 在 iOS7 上已被弃用(连同 Open UDID 和 MAC 地址)。正确的方法是用 UUID、identifierForVendor 或 adsIdentifier 替换它,这取决于你的需要。检查以下内容以了解如何获取 UUID 并将其存储在钥匙串中:github.com/joseandro/TitaniumiOSUniqueIDs/blob/master/Classes/…
猜你喜欢
  • 2019-07-21
  • 2014-01-21
  • 2013-01-13
  • 2011-04-06
  • 2012-05-16
  • 2014-01-26
  • 2018-07-11
  • 1970-01-01
  • 2018-11-15
相关资源
最近更新 更多