Avatar ·

如何在Swift中确定当前iPhone或iOS设备的型号?

大家好!我是一名iOS开发新手,遇到了一个问题:我需要以编程方式确定应用程序运行在哪个具体设备上。例如,我想为iPhone SE、iPhone 12 Pro Max和iPad显示不同的界面元素,或者记录手机型号用于分析。 我尝试过使用 `UIDevice.current.model`,但它只返回像“iPhone”、“iPad”或“iPod touch”这样的通用字符串。而我需要知道具体的型号:“iPhone 12”、“iPhone 14 Pro Max”、“iPad Pro 12.9-inch (5th generation)”等等。 我还尝试过使用 `utsname`,但获取到的代码(例如“iPhone13,2”)如果不借助庞大的字典,就无法转换为人类可读的名称。我在网上找到了很多Objective-C的解决方案,但我需要Swift的,最好是适用于iOS 16+的最新方案。 以下是我尝试过的代码,但它没有提供所需的详细信息: ```swift import UIKit let device = UIDevice.current print("Model: \(device.model)") // "iPhone" print("Localized Model: \(device.localizedModel)") // "iPhone" ```