標籤:
#import <Foundation/Foundation.h>#import <UIKit/UIKit.h>typedef NS_OPTIONS(NSInteger,DeviceType) { iPhoneFivePointFiveInch = 1 << 0, iPhoneFourPointSevenInch = 1 << 1, iPhoneFourInch = 1 << 2, iPhoneThreePointFiveInch = 1 << 3, iPadPro = 1 << 4, iPadOhter = 1 << 5};@interface CheckDevice : NSObject+ (DeviceType)getCurrentDevice;@end
#import "CheckDevice.h"#import "sys/utsname.h"@implementation CheckDevice+ (DeviceType)getCurrentDevice { //機型的尺寸 //iPadPro和iPhone6公用{375, 667},iPad其他機型和iPhone4s公用{320, 480} NSArray *iPhoneSize = @[@"{414, 736}", @"{375, 667}", @"{320, 568}", @"{320, 480}"]; //判斷螢幕尺寸 NSString *type = NSStringFromCGSize([UIScreen mainScreen].bounds.size); struct utsname systemInfo; uname(&systemInfo); NSString *platform = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; if ([platform hasPrefix:@"iPhone"]) { return [iPhoneSize indexOfObject:type]; }else if([platform hasPrefix:@"iPad"]) {//iPad if ([iPhoneSize indexOfObject:type] == iPhoneFourPointSevenInch) return iPadPro; else return iPadOhter; }else//模擬器 return [iPhoneSize indexOfObject:type];}@end
iOS判斷機型