UIDevice+Extensions.swift 687 B

123456789101112131415161718192021
  1. import SwiftUI
  2. extension UIDevice {
  3. var getDeviceId: String {
  4. var systemInfo = utsname()
  5. uname(&systemInfo)
  6. let machineMirror = Mirror(reflecting: systemInfo.machine)
  7. let identifier = machineMirror.children.reduce("") { identifier, element in
  8. guard let value = element.value as? Int8, value != 0 else { return identifier }
  9. return identifier + String(UnicodeScalar(UInt8(value)))
  10. }
  11. return identifier
  12. }
  13. var getOSInfo: String {
  14. let os = ProcessInfo.processInfo.operatingSystemVersion
  15. return String(os.majorVersion) + "." + String(os.minorVersion) + "." + String(os.patchVersion)
  16. }
  17. }