123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- //
- // CpuMapManager.swift
- // Pods
- //
- // Created by 100Years on 2025/6/10.
- //
- import UIKit
- public class CpuMapManager: NSObject {
- static let shared = CpuMapManager()
- }
- extension UIDevice {
-
- var modelIdentifier: String {
- var systemInfo = utsname()
- uname(&systemInfo)
-
- let machineMirror = Mirror(reflecting: systemInfo.machine)
- let identifier = machineMirror.children.reduce("") { (identifier, element) in
- guard let value = element.value as? Int8, value != 0 else {
- return identifier
- }
- return identifier + String(UnicodeScalar(UInt8(value)))
- }
-
- return identifier
- }
-
- /// 数据来源 https://www.jianshu.com/p/d9068fee295e
- public var modelName: String {
-
- let identifier = modelIdentifier
-
- switch identifier {
- case "iPhone8,1":
- return "iPhone 6s"
- case "iPhone8,2":
- return "iPhone 6s Plus"
- case "iPhone8,4":
- return "iPhone SE"
- case "iPhone9,1":
- return "iPhone 7"; //国行、日版、港行
- case "iPhone9,2":
- return "iPhone 7 Plus"; //国行、港行
- case "iPhone9,3":
- return "iPhone 7"; //美版、台版
- case "iPhone9,4":
- return "iPhone 7 Plus"; //美版、台版
- case "iPhone10,1":
- return "iPhone 8"; //国行(A1863)、日行(A1906)
- case "iPhone10,2":
- return "iPhone 8 Plus"; //国行(A1864)、日行(A1898)
- case "iPhone10,3":
- return "iPhone X"; //国行(A1865)、日行(A1902)
- case "iPhone10,4":
- return "iPhone 8"; //美版(Global/A1905)
- case "iPhone10,5":
- return "iPhone 8 Plus"; //美版(Global/A1897)
- case "iPhone10,6":
- return "iPhone X";//美版(Global/A1901)
-
- // 刘海屏(除SE外)
- case "iPhone11,8":
- return "iPhone XR"
- case "iPhone11,2":
- return "iPhone XS"
- case "iPhone11,6":
- return "iPhone XS Max"
- case "iPhone11,4":
- return "iPhone XS Max"
- case "iPhone12,1":
- return "iPhone 11"
- case "iPhone12,3":
- return "iPhone 11 Pro"
- case "iPhone12,5":
- return "iPhone 11 Pro Max"
- case "iPhone12,8":
- return "iPhone SE2"; //(2nd generation)
- case "iPhone13,1":
- return "iPhone 12 mini"
- case "iPhone13,2":
- return "iPhone 12"
- case "iPhone13,3":
- return "iPhone 12 Pro"
- case "iPhone13,4":
- return "iPhone 12 Pro Max"
- case "iPhone14,2":
- return "iPhone 13 Pro"
- case "iPhone14,3":
- return "iPhone 13 Pro Max"
- case "iPhone14,4":
- return "iPhone 13 mini"
- case "iPhone14,5":
- return "iPhone 13"
- case "iPhone14,6":
- return "iPhone SE3"; //(2nd generation)
- case "iPhone14,7":
- return "iPhone 14"
- case "iPhone14,8":
- return "iPhone 14 Plus"
-
- // 灵动岛
- case "iPhone15,2":
- return "iPhone 14 Pro"
- case "iPhone15,3":
- return "iPhone 14 Pro Max"
-
- case "iPhone16,2":
- return "iPhone 15 Pro Max"
- case "iPhone16,1":
- return "iPhone 15 Pro"
- case "iPhone15,5":
- return "iPhone 15 Plus"
- case "iPhone15,4":
- return "iPhone 15"
-
- case "iPhone17,3":
- return "iPhone 16"
- case "iPhone17,4":
- return "iPhone 16 Plus"
- case "iPhone17,1":
- return "iPhone 16 Pro"
- case "iPhone17,2":
- return "iPhone 16 Pro Max"
-
-
-
- default:
- return "--"
- }
- }
- }
|