1. //APP相关
    2. NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];
    3. // APP名称
    4. NSString *app_Name = [infoDictionary objectForKey:@"CFBundleDisplayName"];
    5. // APP版本
    6. NSString *app_Version = [infoDictionary objectForKey:@"CFBundleShortVersionString"];
    7. //APP build版本
    8. NSString *app_build = [infoDictionary objectForKey:@"CFBundleVersion"];
    9. //APP 的bundle name
    10. NSString *bundleName = [infoDictionary objectForKey:@"CFBundleIdentifier"];
    11. //设备相关
    12. //手机序列号
    13. NSString* identifierNumber = [[UIDevice currentDevice] uniqueIdentifier];
    14. NSLog(@"手机序列号: %@",identifierNumber);
    15. //手机别名: 用户定义的名称
    16. NSString* userPhoneName = [[UIDevice currentDevice] name];
    17. NSLog(@"手机别名: %@", userPhoneName);
    18. //设备名称
    19. NSString* deviceName = [[UIDevice currentDevice] systemName];
    20. NSLog(@"设备名称: %@",deviceName );
    21. //手机系统版本
    22. NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];
    23. NSLog(@"手机系统版本: %@", phoneVersion);
    24. //手机型号
    25. NSString* phoneModel = [[UIDevice currentDevice] model];
    26. NSLog(@"手机型号: %@",phoneModel );
    27. //地方型号 (国际化区域名称)
    28. NSString* localPhoneModel = [[UIDevice currentDevice] localizedModel];
    29. NSLog(@"国际化区域名称: %@",localPhoneModel );
    1. #import <sys/utsname.h>
    2. - (NSString *)iphoneType {
    3. struct utsname systemInfo;
    4. uname(&systemInfo);
    5. NSString *platform = [NSString stringWithCString:systemInfo.machine encoding:NSASCIIStringEncoding];
    6. if ([platform isEqualToString:@"iPhone1,1"]) return @"iPhone 2G";
    7. if ([platform isEqualToString:@"iPhone1,2"]) return @"iPhone 3G";
    8. if ([platform isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS";
    9. if ([platform isEqualToString:@"iPhone3,1"]) return @"iPhone 4";
    10. if ([platform isEqualToString:@"iPhone3,2"]) return @"iPhone 4";
    11. if ([platform isEqualToString:@"iPhone3,3"]) return @"iPhone 4";
    12. if ([platform isEqualToString:@"iPhone4,1"]) return @"iPhone 4S";
    13. if ([platform isEqualToString:@"iPhone5,1"]) return @"iPhone 5";
    14. if ([platform isEqualToString:@"iPhone5,2"]) return @"iPhone 5";
    15. if ([platform isEqualToString:@"iPhone5,3"]) return @"iPhone 5c";
    16. if ([platform isEqualToString:@"iPhone5,4"]) return @"iPhone 5c";
    17. if ([platform isEqualToString:@"iPhone6,1"]) return @"iPhone 5s";
    18. if ([platform isEqualToString:@"iPhone6,2"]) return @"iPhone 5s";
    19. if ([platform isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus";
    20. if ([platform isEqualToString:@"iPhone7,2"]) return @"iPhone 6";
    21. if ([platform isEqualToString:@"iPhone8,1"]) return @"iPhone 6s";
    22. if ([platform isEqualToString:@"iPhone8,2"]) return @"iPhone 6s Plus";
    23. if ([platform isEqualToString:@"iPhone8,4"]) return @"iPhone SE";
    24. if ([platform isEqualToString:@"iPhone9,1"]) return @"iPhone 7";
    25. if ([platform isEqualToString:@"iPhone9,2"]) return @"iPhone 7 Plus";
    26. if ([platform isEqualToString:@"iPod1,1"]) return @"iPod Touch 1G";
    27. if ([platform isEqualToString:@"iPod2,1"]) return @"iPod Touch 2G";
    28. if ([platform isEqualToString:@"iPod3,1"]) return @"iPod Touch 3G";
    29. if ([platform isEqualToString:@"iPod4,1"]) return @"iPod Touch 4G";
    30. if ([platform isEqualToString:@"iPod5,1"]) return @"iPod Touch 5G";
    31. if ([platform isEqualToString:@"iPad1,1"]) return @"iPad 1G";
    32. if ([platform isEqualToString:@"iPad2,1"]) return @"iPad 2";
    33. if ([platform isEqualToString:@"iPad2,2"]) return @"iPad 2";
    34. if ([platform isEqualToString:@"iPad2,3"]) return @"iPad 2";
    35. if ([platform isEqualToString:@"iPad2,4"]) return @"iPad 2";
    36. if ([platform isEqualToString:@"iPad2,5"]) return @"iPad Mini 1G";
    37. if ([platform isEqualToString:@"iPad2,6"]) return @"iPad Mini 1G";
    38. if ([platform isEqualToString:@"iPad2,7"]) return @"iPad Mini 1G";
    39. if ([platform isEqualToString:@"iPad3,1"]) return @"iPad 3";
    40. if ([platform isEqualToString:@"iPad3,2"]) return @"iPad 3";
    41. if ([platform isEqualToString:@"iPad3,3"]) return @"iPad 3";
    42. if ([platform isEqualToString:@"iPad3,4"]) return @"iPad 4";
    43. if ([platform isEqualToString:@"iPad3,5"]) return @"iPad 4";
    44. if ([platform isEqualToString:@"iPad3,6"]) return @"iPad 4";
    45. if ([platform isEqualToString:@"iPad4,1"]) return @"iPad Air";
    46. if ([platform isEqualToString:@"iPad4,2"]) return @"iPad Air";
    47. if ([platform isEqualToString:@"iPad4,3"]) return @"iPad Air";
    48. if ([platform isEqualToString:@"iPad4,4"]) return @"iPad Mini 2G";
    49. if ([platform isEqualToString:@"iPad4,5"]) return @"iPad Mini 2G";
    50. if ([platform isEqualToString:@"iPad4,6"]) return @"iPad Mini 2G";
    51. if ([platform isEqualToString:@"i386"]) return @"iPhone Simulator";
    52. if ([platform isEqualToString:@"x86_64"]) return @"iPhone Simulator";
    53. return platform;
    54. }