31

What is the platform string for the iPhone 6 and 6 Plus?

FYI: platform string is important because it helps identifying HW model for programming purpose.

Below is my guess:

  • iPhone 6 (GSM): iPhone7,1
  • iPhone 6 (Global): iPhone7,2
  • iPhone 6 Plus (GSM): iPhone7,3
  • iPhone 6 Plus (Global): iPhone7,4
Trung
  • 1,655
  • 2
  • 18
  • 26
  • 1
    This actually might be a helpful question: The hardware model can - in certain cases - be used to determine the computing power of the device I'm running on. That can be helpful to decide whether to use - for example - high-quality rendering or low quality rendering in a game so that it looks and performs best, based on the device. – Johannes Fahrenkrug Sep 11 '14 at 17:48
  • 2
    At least one iPhone 6 has been identified as "iPhone7,2": http://9to5mac.com/2014/09/09/iphone-6-ran-through-geekbench-once-again-suggests-1-gb-ram-dual-core-a8/ – ThomasW Sep 12 '14 at 06:17
  • @ThomasW Thanks for posting the article. It's very helpful. At least, we know they all have "iPhone7" prefix just as I predicted. However, we still don't know what variant it is. – Trung Sep 12 '14 at 16:09
  • Any updates for iPhone 7 and iPhone 7+? – Ahmad F Oct 20 '16 at 10:27
  • iPhone9,1 = iPhone 7 CDMA; iPhone9,3 = iPhone 7 GSM; iPhone9,2 = iPhone 7+ CDMA; iPhone9,4 = iPhone 7+ GSM – Trung Oct 23 '16 at 08:30

6 Answers6

25

Update: My company now has a verizon iPhone 6 and 6 Plus, here's what I've found

  • iPhone7,1 = iPhone 6 Plus
  • iPhone7,2 = iPhone 6

Old answer below for posterity.


So I've done a little digging around in the IPSW files for iOS 8. There are 2 files for the 2 iPhone 6 models; iPhone7,1 and iPhone7,2. The iPhone7,2 IPSW file contains a file named kernelcache.release.n61 and N61 is known to be the internal name for iPhone 6. Similarly, the IPSW file for iPhone7,1 contains a kernelcache.release.n56 file, and N56 is iPhone 6 Plus. Also, the iPhone7,1 firmware contains @3x image assets, and the iPhone7,2 one contains @2x assets.

Therefore:

  • iPhone7,1 = N56 = iPhone 6 Plus
  • iPhone7,2 = N61 = iPhone 6

There don't appear to be any variants of the 2 devices.

Mike Akers
  • 12,039
  • 14
  • 58
  • 71
  • What are the strings for GSM phones? – progrmr Sep 19 '14 at 22:10
  • I just got my iPhone 6 Plus (T-Mobile / GSM) and the string is the same as your Verizon phone: `iPhone7,1` – progrmr Sep 22 '14 at 20:44
  • I wonder why the iPhone7,1 is the 6 Plus, and not the other way around. Maybe the development of iPhone 6 Plus was started/completed before the smaller iPhone 6? – Ricardo Sanchez-Saez Sep 23 '14 at 17:43
  • 1
    It is interesting. The internal codename (N56) and model (A1522) is lower too. The project that became the iPhone 6 Plus starting first makes sense, but we probably won't find out what the real inside story was for years. – Mike Akers Sep 23 '14 at 20:11
9

Platform strings for the new iPhone 6, 6s, 6 Plus, and 6s Plus:

  • iPhone7,1: iPhone 6 Plus
  • iPhone7,2: iPhone 6
  • iPhone8,1: iPhone 6s
  • iPhone8,2: iPhone 6s Plus
  • iPhone8,4: iPhone SE

Also, here is the snippet with all platform strings since the beginning of time:

if ([platform isEqualToString:@"iPhone1,1"])    return @"iPhone 2G";
if ([platform isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";
if ([platform isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";
if ([platform isEqualToString:@"iPhone3,1"])    return @"iPhone 4";
if ([platform isEqualToString:@"iPhone3,2"])    return @"iPhone 4";
if ([platform isEqualToString:@"iPhone3,3"])    return @"iPhone 4";
if ([platform isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";
if ([platform isEqualToString:@"iPhone5,1"])    return @"iPhone 5";
if ([platform isEqualToString:@"iPhone5,2"])    return @"iPhone 5 (GSM+CDMA)";
if ([platform isEqualToString:@"iPhone5,3"])    return @"iPhone 5c (GSM)";
if ([platform isEqualToString:@"iPhone5,4"])    return @"iPhone 5c (GSM+CDMA)";
if ([platform isEqualToString:@"iPhone6,1"])    return @"iPhone 5s (GSM)";
if ([platform isEqualToString:@"iPhone6,2"])    return @"iPhone 5s (GSM+CDMA)";
if ([platform isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";
if ([platform isEqualToString:@"iPhone7,2"])    return @"iPhone 6";
if ([platform isEqualToString:@"iPhone8,1"])    return @"iPhone 6s";
if ([platform isEqualToString:@"iPhone8,2"])    return @"iPhone 6s Plus";
if ([platform isEqualToString:@"iPhone8,4"])    return @"iPhone SE";

if ([platform isEqualToString:@"iPod1,1"])      return @"iPod Touch (1 Gen)";
if ([platform isEqualToString:@"iPod2,1"])      return @"iPod Touch (2 Gen)";
if ([platform isEqualToString:@"iPod3,1"])      return @"iPod Touch (3 Gen)";
if ([platform isEqualToString:@"iPod4,1"])      return @"iPod Touch (4 Gen)";
if ([platform isEqualToString:@"iPod5,1"])      return @"iPod Touch (5 Gen)";

if ([platform isEqualToString:@"iPad1,1"])      return @"iPad";
if ([platform isEqualToString:@"iPad1,2"])      return @"iPad 3G";
if ([platform isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";
if ([platform isEqualToString:@"iPad2,2"])      return @"iPad 2";
if ([platform isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";
if ([platform isEqualToString:@"iPad2,4"])      return @"iPad 2";
if ([platform isEqualToString:@"iPad2,5"])      return @"iPad Mini (WiFi)";
if ([platform isEqualToString:@"iPad2,6"])      return @"iPad Mini";
if ([platform isEqualToString:@"iPad2,7"])      return @"iPad Mini (GSM+CDMA)";
if ([platform isEqualToString:@"iPad3,1"])      return @"iPad 3 (WiFi)";
if ([platform isEqualToString:@"iPad3,2"])      return @"iPad 3 (GSM+CDMA)";
if ([platform isEqualToString:@"iPad3,3"])      return @"iPad 3";
if ([platform isEqualToString:@"iPad3,4"])      return @"iPad 4 (WiFi)";
if ([platform isEqualToString:@"iPad3,5"])      return @"iPad 4";
if ([platform isEqualToString:@"iPad3,6"])      return @"iPad 4 (GSM+CDMA)";
if ([platform isEqualToString:@"iPad4,1"])      return @"iPad Air (WiFi)";
if ([platform isEqualToString:@"iPad4,2"])      return @"iPad Air (Cellular)";
if ([platform isEqualToString:@"iPad4,4"])      return @"iPad Mini 2 (WiFi)";
if ([platform isEqualToString:@"iPad4,5"])      return @"iPad Mini 2 (Cellular)";
if ([platform isEqualToString:@"iPad4,6"])      return @"iPad Mini 2";
if ([platform isEqualToString:@"iPad4,7"])      return @"iPad Mini 3";
if ([platform isEqualToString:@"iPad4,8"])      return @"iPad Mini 3";
if ([platform isEqualToString:@"iPad4,9"])      return @"iPad Mini 3";
if ([platform isEqualToString:@"iPad5,3"])      return @"iPad Air 2";
if ([platform isEqualToString:@"iPad5,4"])      return @"iPad Air 2";

if ([platform isEqualToString:@"i386"])         return @"Simulator";
if ([platform isEqualToString:@"x86_64"])       return @"Simulator";
Cosmin
  • 6,623
  • 3
  • 26
  • 28
7

If you look inside the device profiles within /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/CoreSimulator/Profiles/DeviceTypes (Using Xcode 6) you will see:

iPhone 6 Plus: iPhone7,1

iPhone 6: iPhone7,2

quellish
  • 21,123
  • 4
  • 76
  • 83
  • Great find. However, it does not tell the variants. iPhone 5S has 2 variants, but the profile.plist only shows 1. – Trung Sep 15 '14 at 04:11
  • The full file path: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/CoreSimulator/Profiles/DeviceTypes/iPhone 6.simdevicetype/Contents/Resources/profile.plist Look for modelIdentifier. – Trung Sep 15 '14 at 04:17
  • That is the path for just one device, there are others. – quellish Sep 15 '14 at 04:24
  • Yes I know. Just want to make clear to others. iPhone 6 Plus path: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/De‌​veloper/Library/CoreSimulator/Profiles/DeviceTypes/iPhone 6 Plus.simdevicetype/Contents/Resources/profile.plist – Trung Sep 15 '14 at 16:31
6

The URLs of these pages on Apple's website (for "RF Exposure") seem to confirm:

iPhone 6 Plus: 7,1

iPhone 6: 7,2

daresayer
  • 71
  • 2
2

http://theiphonewiki.com/wiki/IPhone

iPhone 6 Plus: iPhone7,1

iPhone 6: iPhone7,2

A.S.
  • 736
  • 6
  • 21
0

This seems to be kept up to date with the most current models.

UIDeviceHardware

Elijah
  • 8,381
  • 2
  • 55
  • 49