How to determine the current iPhone/device model?
I made this "pure Swift" extension on UIDevice
.
If you are looking for a more elegant solution you can use my µ-framework DeviceKit
published on GitHub (also available via CocoaPods, Carthage and Swift Package Manager).
Here's the code:
import UIKit
public extension UIDevice {
static let modelName: 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)))
}
func mapToDevice(identifier: String) -> String { // swiftlint:disable:this cyclomatic_complexity
#if os(iOS)
switch identifier {
case "iPod5,1": return "iPod touch (5th generation)"
case "iPod7,1": return "iPod touch (6th generation)"
case "iPod9,1": return "iPod touch (7th generation)"
case "iPhone3,1", "iPhone3,2", "iPhone3,3": return "iPhone 4"
case "iPhone4,1": return "iPhone 4s"
case "iPhone5,1", "iPhone5,2": return "iPhone 5"
case "iPhone5,3", "iPhone5,4": return "iPhone 5c"
case "iPhone6,1", "iPhone6,2": return "iPhone 5s"
case "iPhone7,2": return "iPhone 6"
case "iPhone7,1": return "iPhone 6 Plus"
case "iPhone8,1": return "iPhone 6s"
case "iPhone8,2": return "iPhone 6s Plus"
case "iPhone9,1", "iPhone9,3": return "iPhone 7"
case "iPhone9,2", "iPhone9,4": return "iPhone 7 Plus"
case "iPhone10,1", "iPhone10,4": return "iPhone 8"
case "iPhone10,2", "iPhone10,5": return "iPhone 8 Plus"
case "iPhone10,3", "iPhone10,6": return "iPhone X"
case "iPhone11,2": return "iPhone XS"
case "iPhone11,4", "iPhone11,6": return "iPhone XS Max"
case "iPhone11,8": return "iPhone XR"
case "iPhone12,1": return "iPhone 11"
case "iPhone12,3": return "iPhone 11 Pro"
case "iPhone12,5": return "iPhone 11 Pro Max"
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,4": return "iPhone 13 mini"
case "iPhone14,5": return "iPhone 13"
case "iPhone14,2": return "iPhone 13 Pro"
case "iPhone14,3": return "iPhone 13 Pro Max"
case "iPhone8,4": return "iPhone SE"
case "iPhone12,8": return "iPhone SE (2nd generation)"
case "iPhone14,6": return "iPhone SE (3rd generation)"
case "iPad2,1", "iPad2,2", "iPad2,3", "iPad2,4": return "iPad 2"
case "iPad3,1", "iPad3,2", "iPad3,3": return "iPad (3rd generation)"
case "iPad3,4", "iPad3,5", "iPad3,6": return "iPad (4th generation)"
case "iPad6,11", "iPad6,12": return "iPad (5th generation)"
case "iPad7,5", "iPad7,6": return "iPad (6th generation)"
case "iPad7,11", "iPad7,12": return "iPad (7th generation)"
case "iPad11,6", "iPad11,7": return "iPad (8th generation)"
case "iPad12,1", "iPad12,2": return "iPad (9th generation)"
case "iPad4,1", "iPad4,2", "iPad4,3": return "iPad Air"
case "iPad5,3", "iPad5,4": return "iPad Air 2"
case "iPad11,3", "iPad11,4": return "iPad Air (3rd generation)"
case "iPad13,1", "iPad13,2": return "iPad Air (4th generation)"
case "iPad13,16", "iPad13,17": return "iPad Air (5th generation)"
case "iPad2,5", "iPad2,6", "iPad2,7": return "iPad mini"
case "iPad4,4", "iPad4,5", "iPad4,6": return "iPad mini 2"
case "iPad4,7", "iPad4,8", "iPad4,9": return "iPad mini 3"
case "iPad5,1", "iPad5,2": return "iPad mini 4"
case "iPad11,1", "iPad11,2": return "iPad mini (5th generation)"
case "iPad14,1", "iPad14,2": return "iPad mini (6th generation)"
case "iPad6,3", "iPad6,4": return "iPad Pro (9.7-inch)"
case "iPad7,3", "iPad7,4": return "iPad Pro (10.5-inch)"
case "iPad8,1", "iPad8,2", "iPad8,3", "iPad8,4": return "iPad Pro (11-inch) (1st generation)"
case "iPad8,9", "iPad8,10": return "iPad Pro (11-inch) (2nd generation)"
case "iPad13,4", "iPad13,5", "iPad13,6", "iPad13,7": return "iPad Pro (11-inch) (3rd generation)"
case "iPad6,7", "iPad6,8": return "iPad Pro (12.9-inch) (1st generation)"
case "iPad7,1", "iPad7,2": return "iPad Pro (12.9-inch) (2nd generation)"
case "iPad8,5", "iPad8,6", "iPad8,7", "iPad8,8": return "iPad Pro (12.9-inch) (3rd generation)"
case "iPad8,11", "iPad8,12": return "iPad Pro (12.9-inch) (4th generation)"
case "iPad13,8", "iPad13,9", "iPad13,10", "iPad13,11":return "iPad Pro (12.9-inch) (5th generation)"
case "AppleTV5,3": return "Apple TV"
case "AppleTV6,2": return "Apple TV 4K"
case "AudioAccessory1,1": return "HomePod"
case "AudioAccessory5,1": return "HomePod mini"
case "i386", "x86_64", "arm64": return "Simulator \(mapToDevice(identifier: ProcessInfo().environment["SIMULATOR_MODEL_IDENTIFIER"] ?? "iOS"))"
default: return identifier
}
#elseif os(tvOS)
switch identifier {
case "AppleTV5,3": return "Apple TV 4"
case "AppleTV6,2": return "Apple TV 4K"
case "i386", "x86_64": return "Simulator \(mapToDevice(identifier: ProcessInfo().environment["SIMULATOR_MODEL_IDENTIFIER"] ?? "tvOS"))"
default: return identifier
}
#endif
}
return mapToDevice(identifier: identifier)
}()
}
You call it like this:
let modelName = UIDevice.modelName
For real devices it returns e.g. "iPad Pro (12.9-inch) (5th generation)", for simulators it returns e.g. "Simulator iPad Pro (12.9-inch) (5th generation)"
Here's the model references:
- https://theiphonewiki.com/wiki/Models
- https://theiphonewiki.com/wiki/BORD
How to get device make and model on iOS?
EITHER try this library: http://github.com/erica/uidevice-extension/ (by Erica Sadun). (The library is 7-8 years old, and hence is obsolete)
(Sample Code):
[[UIDevice currentDevice] platformType] // ex: UIDevice4GiPhone
[[UIDevice currentDevice] platformString] // ex: @"iPhone 4G"
OR You can use this method:
You can get the device model number using uname from sys/utsname.h. For example:
Objective-C
#import <sys/utsname.h> // import it in your header or implementation file.
NSString* deviceName()
{
struct utsname systemInfo;
uname(&systemInfo);
return [NSString stringWithCString:systemInfo.machine
encoding:NSUTF8StringEncoding];
}
Swift 3
extension UIDevice {
var modelName: 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
}
}
print(UIDevice.current.modelName)
The result should be:
// Output on a simulator
@"i386" on 32-bit Simulator
@"x86_64" on 64-bit Simulator
// Output on an iPhone
@"iPhone1,1" on iPhone
@"iPhone1,2" on iPhone 3G
@"iPhone2,1" on iPhone 3GS
@"iPhone3,1" on iPhone 4 (GSM)
@"iPhone3,2" on iPhone 4 (GSM Rev A)
@"iPhone3,3" on iPhone 4 (CDMA/Verizon/Sprint)
@"iPhone4,1" on iPhone 4S
@"iPhone5,1" on iPhone 5 (model A1428, AT&T/Canada)
@"iPhone5,2" on iPhone 5 (model A1429, everything else)
@"iPhone5,3" on iPhone 5c (model A1456, A1532 | GSM)
@"iPhone5,4" on iPhone 5c (model A1507, A1516, A1526 (China), A1529 | Global)
@"iPhone6,1" on iPhone 5s (model A1433, A1533 | GSM)
@"iPhone6,2" on iPhone 5s (model A1457, A1518, A1528 (China), A1530 | Global)
@"iPhone7,1" on iPhone 6 Plus
@"iPhone7,2" on iPhone 6
@"iPhone8,1" on iPhone 6S
@"iPhone8,2" on iPhone 6S Plus
@"iPhone8,4" on iPhone SE
@"iPhone9,1" on iPhone 7 (CDMA)
@"iPhone9,3" on iPhone 7 (GSM)
@"iPhone9,2" on iPhone 7 Plus (CDMA)
@"iPhone9,4" on iPhone 7 Plus (GSM)
@"iPhone10,1" on iPhone 8 (CDMA)
@"iPhone10,4" on iPhone 8 (GSM)
@"iPhone10,2" on iPhone 8 Plus (CDMA)
@"iPhone10,5" on iPhone 8 Plus (GSM)
@"iPhone10,3" on iPhone X (CDMA)
@"iPhone10,6" on iPhone X (GSM)
@"iPhone11,2" on iPhone XS
@"iPhone11,4" on iPhone XS Max
@"iPhone11,6" on iPhone XS Max China
@"iPhone11,8" on iPhone XR
@"iPhone12,1" on iPhone 11
@"iPhone12,3" on iPhone 11 Pro
@"iPhone12,5" on iPhone 11 Pro Max
@"iPhone12,8" on iPhone SE (2nd Gen)
@"iPhone13,1" on iPhone 12 Mini
@"iPhone13,2" on iPhone 12
@"iPhone13,3" on iPhone 12 Pro
@"iPhone13,4" on iPhone 12 Pro Max
//iPad 1
@"iPad1,1" on iPad - Wifi (model A1219)
@"iPad1,2" on iPad - Wifi + Cellular (model A1337)
//iPad 2
@"iPad2,1" - Wifi (model A1395)
@"iPad2,2" - GSM (model A1396)
@"iPad2,3" - 3G (model A1397)
@"iPad2,4" - Wifi (model A1395)
// iPad Mini
@"iPad2,5" - Wifi (model A1432)
@"iPad2,6" - Wifi + Cellular (model A1454)
@"iPad2,7" - Wifi + Cellular (model A1455)
//iPad 3
@"iPad3,1" - Wifi (model A1416)
@"iPad3,2" - Wifi + Cellular (model A1403)
@"iPad3,3" - Wifi + Cellular (model A1430)
//iPad 4
@"iPad3,4" - Wifi (model A1458)
@"iPad3,5" - Wifi + Cellular (model A1459)
@"iPad3,6" - Wifi + Cellular (model A1460)
//iPad AIR
@"iPad4,1" - Wifi (model A1474)
@"iPad4,2" - Wifi + Cellular (model A1475)
@"iPad4,3" - Wifi + Cellular (model A1476)
// iPad Mini 2
@"iPad4,4" - Wifi (model A1489)
@"iPad4,5" - Wifi + Cellular (model A1490)
@"iPad4,6" - Wifi + Cellular (model A1491)
// iPad Mini 3
@"iPad4,7" - Wifi (model A1599)
@"iPad4,8" - Wifi + Cellular (model A1600)
@"iPad4,9" - Wifi + Cellular (model A1601)
// iPad Mini 4
@"iPad5,1" - Wifi (model A1538)
@"iPad5,2" - Wifi + Cellular (model A1550)
//iPad AIR 2
@"iPad5,3" - Wifi (model A1566)
@"iPad5,4" - Wifi + Cellular (model A1567)
// iPad PRO 9.7"
@"iPad6,3" - Wifi (model A1673)
@"iPad6,4" - Wifi + Cellular (model A1674)
@"iPad6,4" - Wifi + Cellular (model A1675)
//iPad PRO 12.9"
@"iPad6,7" - Wifi (model A1584)
@"iPad6,8" - Wifi + Cellular (model A1652)
//iPad (5th generation)
@"iPad6,11" - Wifi (model A1822)
@"iPad6,12" - Wifi + Cellular (model A1823)
//iPad PRO 12.9" (2nd Gen)
@"iPad7,1" - Wifi (model A1670)
@"iPad7,2" - Wifi + Cellular (model A1671)
@"iPad7,2" - Wifi + Cellular (model A1821)
//iPad PRO 10.5"
@"iPad7,3" - Wifi (model A1701)
@"iPad7,4" - Wifi + Cellular (model A1709)
// iPad (6th Gen)
@"iPad7,5" - WiFi
@"iPad7,6" - WiFi + Cellular
// iPad (7th Gen)
@"iPad7,11" - WiFi
@"iPad7,12" - WiFi + Cellular
//iPad PRO 11"
@"iPad8,1" - WiFi
@"iPad8,2" - 1TB, WiFi
@"iPad8,3" - WiFi + Cellular
@"iPad8,4" - 1TB, WiFi + Cellular
//iPad PRO 12.9" (3rd Gen)
@"iPad8,5" - WiFi
@"iPad8,6" - 1TB, WiFi
@"iPad8,7" - WiFi + Cellular
@"iPad8,8" - 1TB, WiFi + Cellular
//iPad PRO 11" (2nd Gen)
@"iPad8,9" - WiFi
@"iPad8,10" - 1TB, WiFi
//iPad PRO 12.9" (4th Gen)
@"iPad8,11" - (WiFi)
@"iPad8,12" - (WiFi+Cellular)
// iPad mini 5th Gen
@"iPad11,1" - WiFi
@"iPad11,2" - Wifi + Cellular
// iPad Air 3rd Gen
@"iPad11,3" - Wifi
@"iPad11,4" - Wifi + Cellular
// iPad (8th Gen)
@"iPad11,6" - iPad 8th Gen (WiFi)
@"iPad11,7" - iPad 8th Gen (WiFi+Cellular)
// iPad Air 4th Gen
@"iPad13,1" - iPad air 4th Gen (WiFi)
@"iPad13,2" - iPad air 4th Gen (WiFi+Cellular)
//iPod Touch
@"iPod1,1" on iPod Touch
@"iPod2,1" on iPod Touch Second Generation
@"iPod3,1" on iPod Touch Third Generation
@"iPod4,1" on iPod Touch Fourth Generation
@"iPod5,1" on iPod Touch 5th Generation
@"iPod7,1" on iPod Touch 6th Generation
@"iPod9,1" on iPod Touch 7th Generation
// Apple Watch
@"Watch1,1" on Apple Watch 38mm case
@"Watch1,2" on Apple Watch 38mm case
@"Watch2,6" on Apple Watch Series 1 38mm case
@"Watch2,7" on Apple Watch Series 1 42mm case
@"Watch2,3" on Apple Watch Series 2 38mm case
@"Watch2,4" on Apple Watch Series 2 42mm case
@"Watch3,1" on Apple Watch Series 3 38mm case (GPS+Cellular)
@"Watch3,2" on Apple Watch Series 3 42mm case (GPS+Cellular)
@"Watch3,3" on Apple Watch Series 3 38mm case (GPS)
@"Watch3,4" on Apple Watch Series 3 42mm case (GPS)
@"Watch4,1" on Apple Watch Series 4 40mm case (GPS)
@"Watch4,2" on Apple Watch Series 4 44mm case (GPS)
@"Watch4,3" on Apple Watch Series 4 40mm case (GPS+Cellular)
@"Watch4,4" on Apple Watch Series 4 44mm case (GPS+Cellular)
@"Watch5,1" on Apple Watch Series 5 40mm case (GPS)
@"Watch5,2" on Apple Watch Series 5 44mm case (GPS)
@"Watch5,3" on Apple Watch Series 5 40mm case (GPS+Cellular)
@"Watch5,4" on Apple Watch Series 5 44mm case (GPS+Cellular)
@"Watch5,9" on Apple Watch SE 40mm case (GPS)
@"Watch5,10" on Apple Watch SE 44mm case (GPS)
@"Watch5,11" on Apple Watch SE 40mm case (GPS+Cellular)
@"Watch5,12" on Apple Watch SE 44mm case (GPS+Cellular)
@"Watch6,1" on Apple Watch Series 6 40mm case (GPS)
@"Watch6,2" on Apple Watch Series 6 44mm case (GPS)
@"Watch6,3" on Apple Watch Series 6 40mm case (GPS+Cellular)
@"Watch6,4" on Apple Watch Series 6 44mm case (GPS+Cellular)
Determine device (iPhone, iPod Touch) with iOS
You can use the UIDevice
class like this:
NSString *deviceType = [UIDevice currentDevice].model;
if([deviceType isEqualToString:@"iPhone"])
// it's an iPhone
How to check iphone model using swift
Use the following code. (Reference from)
enum UIUserInterfaceIdiom : Int
{
case Unspecified
case Phone
case Pad
}
struct ScreenSize
{
static let SCREEN_WIDTH = UIScreen.mainScreen().bounds.size.width
static let SCREEN_HEIGHT = UIScreen.mainScreen().bounds.size.height
static let SCREEN_MAX_LENGTH = max(ScreenSize.SCREEN_WIDTH, ScreenSize.SCREEN_HEIGHT)
static let SCREEN_MIN_LENGTH = min(ScreenSize.SCREEN_WIDTH, ScreenSize.SCREEN_HEIGHT)
}
struct DeviceType
{
static let IS_IPHONE_4_OR_LESS = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH < 568.0
static let IS_IPHONE_5 = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 568.0
static let IS_IPHONE_6 = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 667.0
static let IS_IPHONE_6P = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 736.0
static let IS_IPAD = UIDevice.currentDevice().userInterfaceIdiom == .Pad && ScreenSize.SCREEN_MAX_LENGTH == 1024.0
}
and use it as:
if DeviceType.IS_IPHONE_6P {
println("IS_IPHONE_6P")
}
Detect Apple Device Model
Use this code in order to get current device model:
#import <sys/utsname.h>
+ (NSString *) deviceModel
{
struct utsname systemInfo;
uname(&systemInfo);
NSString *deviceOriginalName = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
NSString *deviceFormattedName = deviceOriginalName;
if ([deviceOriginalName isEqualToString:@"iPhone1,1"]) deviceFormattedName = @"iPhone 2G"; //iPhone 2G
else if ([deviceOriginalName isEqualToString:@"iPhone1,2"]) deviceFormattedName = @"iPhone 3G"; //iPhone 3G
else if ([deviceOriginalName isEqualToString:@"iPhone2,1"]) deviceFormattedName = @"iPhone 3GS"; //iPhone 3GS
else if ([deviceOriginalName isEqualToString:@"iPhone3,1"]) deviceFormattedName = @"iPhone 4"; //iPhone 4 - AT&T
else if ([deviceOriginalName isEqualToString:@"iPhone3,2"]) deviceFormattedName = @"iPhone 4"; //iPhone 4 - Other carrier
else if ([deviceOriginalName isEqualToString:@"iPhone3,3"]) deviceFormattedName = @"iPhone 4"; //iPhone 4 - Other carrier
else if ([deviceOriginalName isEqualToString:@"iPhone4,1"]) deviceFormattedName = @"iPhone 4S"; //iPhone 4S
else if ([deviceOriginalName isEqualToString:@"iPhone5,1"]) deviceFormattedName = @"iPhone 5"; //iPhone 5 (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone5,2"]) deviceFormattedName = @"iPhone 5"; //iPhone 5 (GSM+CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone5,3"]) deviceFormattedName = @"iPhone 5c"; //iPhone 5c (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone5,4"]) deviceFormattedName = @"iPhone 5c"; //iPhone 5c (GSM+CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone6,1"]) deviceFormattedName = @"iPhone 5s"; //iPhone 5s (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone6,2"]) deviceFormattedName = @"iPhone 5s"; //iPhone 5s (GSM+CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone7,1"]) deviceFormattedName = @"iPhone 6 Plus"; //iPhone 6+
else if ([deviceOriginalName isEqualToString:@"iPhone7,2"]) deviceFormattedName = @"iPhone 6"; //iPhone 6
else if ([deviceOriginalName isEqualToString:@"iPhone8,1"]) deviceFormattedName = @"iPhone 6S"; //iPhone 6S
else if ([deviceOriginalName isEqualToString:@"iPhone8,2"]) deviceFormattedName = @"iPhone 6S Plus"; //iPhone 6S+
else if ([deviceOriginalName isEqualToString:@"iPhone8,4"]) deviceFormattedName = @"iPhone SE"; //iPhone SE
else if ([deviceOriginalName isEqualToString:@"iPhone9,1"]) deviceFormattedName = @"iPhone 7"; //iPhone 7 (CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone9,3"]) deviceFormattedName = @"iPhone 7"; //iPhone 7 (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone9,2"]) deviceFormattedName = @"iPhone 7 Plus"; //iPhone 7 Plus (CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone9,4"]) deviceFormattedName = @"iPhone 7 Plus"; //iPhone 7 Plus (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone10,1"]) deviceFormattedName = @"iPhone 8"; //iPhone 8 (CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone10,4"]) deviceFormattedName = @"iPhone 8"; //iPhone 8 (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone10,2"]) deviceFormattedName = @"iPhone 8 Plus"; //iPhone 8 Plus (CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone10,5"]) deviceFormattedName = @"iPhone 8 Plus"; //iPhone 8 Plus (GSM)
else if ([deviceOriginalName isEqualToString:@"iPhone10,3"]) deviceFormattedName = @"iPhone X"; //iPhone X (CDMA)
else if ([deviceOriginalName isEqualToString:@"iPhone10,6"]) deviceFormattedName = @"iPhone X"; //iPhone X (GSM)
else if ([deviceOriginalName isEqualToString:@"iPod1,1"]) deviceFormattedName = @"iPod Touch 1st Gen"; //iPod Touch 1G
else if ([deviceOriginalName isEqualToString:@"iPod2,1"]) deviceFormattedName = @"iPod Touch 2nd Gen"; //iPod Touch 2G
else if ([deviceOriginalName isEqualToString:@"iPod3,1"]) deviceFormattedName = @"iPod Touch 3rd Gen"; //iPod Touch 3G
else if ([deviceOriginalName isEqualToString:@"iPod4,1"]) deviceFormattedName = @"iPod Touch 4th Gen"; //iPod Touch 4G
else if ([deviceOriginalName isEqualToString:@"iPod5,1"]) deviceFormattedName = @"iPod Touch 5th Gen"; //iPod Touch 5G
else if ([deviceOriginalName isEqualToString:@"iPod7,1"]) deviceFormattedName = @"iPod Touch 6th Gen"; //iPod Touch 6G
else if ([deviceOriginalName isEqualToString:@"iPad1,1"]) deviceFormattedName = @"iPad 1"; //iPad Wifi
else if ([deviceOriginalName isEqualToString:@"iPad1,2"]) deviceFormattedName = @"iPad 1"; //iPad 3G
else if ([deviceOriginalName isEqualToString:@"iPad2,1"]) deviceFormattedName = @"iPad 2"; //iPad 2 (WiFi)
else if ([deviceOriginalName isEqualToString:@"iPad2,2"]) deviceFormattedName = @"iPad 2"; //iPad 2 (GSM)
else if ([deviceOriginalName isEqualToString:@"iPad2,3"]) deviceFormattedName = @"iPad 2"; //iPad 2 (CDMA)
else if ([deviceOriginalName isEqualToString:@"iPad2,4"]) deviceFormattedName = @"iPad 2"; //iPad 2 (WiFi)
else if ([deviceOriginalName isEqualToString:@"iPad2,5"]) deviceFormattedName = @"iPad Mini"; //iPad Mini (WiFi)
else if ([deviceOriginalName isEqualToString:@"iPad2,6"]) deviceFormattedName = @"iPad Mini"; //iPad Mini (GSM)
else if ([deviceOriginalName isEqualToString:@"iPad2,7"]) deviceFormattedName = @"iPad Mini"; //iPad Mini (GSM+CDMA)
else if ([deviceOriginalName isEqualToString:@"iPad3,1"]) deviceFormattedName = @"iPad 3"; //iPad 3 (WiFi)
else if ([deviceOriginalName isEqualToString:@"iPad3,2"]) deviceFormattedName = @"iPad 3"; //iPad 3 (GSM+CDMA)
else if ([deviceOriginalName isEqualToString:@"iPad3,3"]) deviceFormattedName = @"iPad 3"; //iPad 3 (GSM)
else if ([deviceOriginalName isEqualToString:@"iPad3,4"]) deviceFormattedName = @"iPad 4"; //iPad 4 (WiFi)
else if ([deviceOriginalName isEqualToString:@"iPad3,5"]) deviceFormattedName = @"iPad 4"; //iPad 4 (GSM)
else if ([deviceOriginalName isEqualToString:@"iPad3,6"]) deviceFormattedName = @"iPad 4"; //iPad 4 (GSM+CDMA)
else if ([deviceOriginalName isEqualToString:@"iPad4,1"]) deviceFormattedName = @"iPad Air"; //iPad Air A1474
else if ([deviceOriginalName isEqualToString:@"iPad4,2"]) deviceFormattedName = @"iPad Air"; //iPad Air A1475
else if ([deviceOriginalName isEqualToString:@"iPad4,3"]) deviceFormattedName = @"iPad Air"; //iPad Air A1476
else if ([deviceOriginalName isEqualToString:@"iPad4,4"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 2 A1489
else if ([deviceOriginalName isEqualToString:@"iPad4,5"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 2 A1490
else if ([deviceOriginalName isEqualToString:@"iPad4,6"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 2 A1491
else if ([deviceOriginalName isEqualToString:@"iPad4,7"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 3 A1599
else if ([deviceOriginalName isEqualToString:@"iPad4,8"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 3 A1600
else if ([deviceOriginalName isEqualToString:@"iPad4,9"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 3 A1601
else if ([deviceOriginalName isEqualToString:@"iPad5,1"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 4 A1538
else if ([deviceOriginalName isEqualToString:@"iPad5,2"]) deviceFormattedName = @"iPad Mini"; //iPad Mini 4 A1550
else if ([deviceOriginalName isEqualToString:@"iPad5,3"]) deviceFormattedName = @"iPad Air"; //iPad Air 2 A1566
else if ([deviceOriginalName isEqualToString:@"iPad5,4"]) deviceFormattedName = @"iPad Air"; //iPad Air 2 A1567
else if ([deviceOriginalName isEqualToString:@"iPad6,7"]) deviceFormattedName = @"iPad Pro 12.9\""; //iPad Pro 12.9"
else if ([deviceOriginalName isEqualToString:@"iPad6,4"]) deviceFormattedName = @"iPad Pro 9.7\""; //iPad Pro 9.7"
else if ([deviceOriginalName isEqualToString:@"i386"]) deviceFormattedName = @"Simulator"; //Simulator
else if ([deviceOriginalName isEqualToString:@"x86_64"]) deviceFormattedName = @"Simulator"; //Simulator
return deviceFormattedName;
}
Related Topics
Disabling Auto-Play in Full Screen on Ios
Presenting Modal in iOS 13 Fullscreen
Should Iboutlets Be Strong or Weak Under Arc
Create Singleton Using Gcd'S Dispatch_Once in Objective-C
How to Deploy an Iphone Application from Xcode to a Real Iphone Device
Getting a Screenshot of a Uiscrollview, Including Offscreen Parts
Get Button Click Inside Uitableviewcell
How to Save Picture to Iphone Photo Library
"Warning: Iphone Apps Should Include an Armv6 Architecture" Even With Build Config Set
Xcode Error "Could Not Find Developer Disk Image"
Save Generated Gif to Camera Roll
Set the Maximum Character Length of a Uitextfield
How to Programmatically Get the MAC Address of an Iphone
Creating a Segue Programmatically
Change User Agent in Uiwebview
How to Change the Background Color of a Uibutton While It's Highlighted