如何在对象C或快速获取设备序列号

时间:2018-10-25 06:34:47

标签: ios objective-c swift

嗨,我是Objective C的新手。 请帮助我如何在iPhone中获取设备序列号请帮助我 任何人都请提供示例应用程序。

谢谢。

1 个答案:

答案 0 :(得分:3)

对于iOS:

Apple不允许开发人员在iOS上访问设备序列号。或者,它们为您提供identifierForVendor

  

一个字母数字字符串,用于唯一标识应用程序供应商的设备。 (只读)

对于macOS:

var serialNumber: String? {
  let platformExpert = IOServiceGetMatchingService(kIOMasterPortDefault, IOServiceMatching("IOPlatformExpertDevice") )

  guard platformExpert > 0 else {
    return nil
  }

  guard let serialNumber = (IORegistryEntryCreateCFProperty(platformExpert, kIOPlatformSerialNumberKey as CFString, kCFAllocatorDefault, 0).takeUnretainedValue() as? String)?.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines) else {
    return nil
  }


  IOObjectRelease(platformExpert)

  return serialNumber
}

来源:https://gist.github.com/leogdion/77f6143ecf793e1ba381917d4b3b286c