iOS开发 获取设备参数


         在开发的过程中我们经常要获取设备的参数的参数,比如设备的机型,设备的系统版本,以及设备的电量等,下面我把这些做了一个整理放到了一个类里面!

  .h文件

#import <Foundation/Foundation.h>

@interface Function : NSObject

/**
 *  @author GorLong, 16-09-27 14:09:06
 *
 *  获取手机系统版本
 *
 *  @return 返回手机系统版本
 */
+ (NSString *)systemVersion;


/**
 *  @author GorLong, 16-09-27 14:09:44
 *
 *  获取手机机型
 *
 *  @return 手机机型
 */
+ (NSString *)iphoneType;

/**
 *  @author GorLong, 16-09-27 14:09:36
 *
 *  获取系统名称
 *
 *  @return 返回系统版本名称
 */
+ (NSString *)systemName;


/**
 *  @author GorLong, 16-09-27 14:09:39
 *
 *  获取手机电量
 *
 *  @return 返回手机电量
 */
+ (NSString *)batteryLevel;

@end


.m文件的实现

#import "Function.h"
#import <sys/utsname.h>

@implementation Function

/**
 *  @author GorLong, 16-09-27 14:09:06
 *
 *  获取手机系统版本
 *
 *  @return 返回手机系统版本
 */
+ (NSString *)systemVersion{
    return [NSString stringWithFormat:@"iOS %@",[[UIDevice currentDevice] systemVersion]];
}


/**
 *  @author GorLong, 16-09-27 14:09:44
 *
 *  获取手机机型
 *
 *  @return 手机机型
 */
+ (NSString *)iphoneType{

    struct utsname systemInfo;
    
    uname(&systemInfo);
    
    NSString *platform = [NSString stringWithCString:systemInfo.machine encoding:NSASCIIStringEncoding];
    
    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";
    
    if ([platform isEqualToString:@"iPhone5,3"]) return @"iPhone 5c";
    
    if ([platform isEqualToString:@"iPhone5,4"]) return @"iPhone 5c";
    
    if ([platform isEqualToString:@"iPhone6,1"]) return @"iPhone 5s";
    
    if ([platform isEqualToString:@"iPhone6,2"]) return @"iPhone 5s";
    
    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:@"iPhone9,1"]) return @"iPhone 7";
    
    if ([platform isEqualToString:@"iPhone9,3"]) return @"iPhone 7";

    if ([platform isEqualToString:@"iPhone9,2"]) return @"iPhone 7 Plus";
    
    if ([platform isEqualToString:@"iPhone9,4"]) return @"iPhone 7 Plus";

    
    if ([platform isEqualToString:@"iPod1,1"])  return @"iPod Touch 1";
    
    if ([platform isEqualToString:@"iPod2,1"])  return @"iPod Touch 2";
    
    if ([platform isEqualToString:@"iPod3,1"])  return @"iPod Touch 3";
    
    if ([platform isEqualToString:@"iPod4,1"])  return @"iPod Touch 4";
    
    if ([platform isEqualToString:@"iPod5,1"])  return @"iPod Touch 5";
    
    if ([platform isEqualToString:@"iPad1,1"])  return @"iPad 1G";
    
    if ([platform isEqualToString:@"iPad2,1"])  return @"iPad 2";
    
    if ([platform isEqualToString:@"iPad2,2"])  return @"iPad 2";
    
    if ([platform isEqualToString:@"iPad2,3"])  return @"iPad 2";
    
    if ([platform isEqualToString:@"iPad2,4"])  return @"iPad 2";
    
    if ([platform isEqualToString:@"iPad2,5"])  return @"iPad Mini 1G";
    
    if ([platform isEqualToString:@"iPad2,6"])  return @"iPad Mini 1G";
    
    if ([platform isEqualToString:@"iPad2,7"])  return @"iPad Mini 1G";
    
    if ([platform isEqualToString:@"iPad3,1"])  return @"iPad 3";
    
    if ([platform isEqualToString:@"iPad3,2"])  return @"iPad 3";
    
    if ([platform isEqualToString:@"iPad3,3"])  return @"iPad 3";
    
    if ([platform isEqualToString:@"iPad3,4"])  return @"iPad 4";
    
    if ([platform isEqualToString:@"iPad3,5"])  return @"iPad 4";
    
    if ([platform isEqualToString:@"iPad3,6"])  return @"iPad 4";
    
    if ([platform isEqualToString:@"iPad4,1"])  return @"iPad Air";
    
    if ([platform isEqualToString:@"iPad4,2"])  return @"iPad Air";
    
    if ([platform isEqualToString:@"iPad4,3"])  return @"iPad Air";
    
    if ([platform isEqualToString:@"iPad4,4"])  return @"iPad Mini 2G";
    
    if ([platform isEqualToString:@"iPad4,5"])  return @"iPad Mini 2G";
    
    if ([platform isEqualToString:@"iPad4,6"])  return @"iPad Mini 2G";
    
    if ([platform isEqualToString:@"i386"])      return @"iPhone Simulator";
    
    if ([platform isEqualToString:@"x86_64"])    return @"iPhone Simulator";
    
    return platform;
}

/**
 *  @author GorLong, 16-09-27 14:09:36
 *
 *  获取系统具体版本 9.1.2
 *
 *  @return 返回系统版本名称
 */
+ (NSString *)systemName{
    return [[UIDevice currentDevice] systemName];;
}


/**
 *  @author GorLong, 16-09-27 14:09:39
 *
 *  获取手机电量
 *
 *  @return 返回手机电量
 */
+ (NSString *)batteryLevel{
    return [NSString  stringWithFormat:@"%f",[[UIDevice currentDevice] batteryLevel]];
}


@end


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值