iOS 如何获取手机型号、系统版本、电池电量

2024-04-30 07:08

本文主要是介绍iOS 如何获取手机型号、系统版本、电池电量,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、手机型号:iPhone 6

NSString* phoneModel = [self iphoneType]; //方法在下面

2、手机系统版本:9.1

NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];

3、手机系统:iPhone OS

NSString * iponeM = [[UIDevice currentDevice] systemName];

4、电池电量

CGFloat batteryLevel = [[UIDevice currentDevice] batteryLevel];


获取手机型号需导入头文件
#import <sys/utsname.h>

//获取手机型号
- (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,2"]) return @"iPhone 7 Plus";if ([platform isEqualToString:@"iPod1,1"]) return @"iPod Touch 1G";if ([platform isEqualToString:@"iPod2,1"]) return @"iPod Touch 2G";if ([platform isEqualToString:@"iPod3,1"]) return @"iPod Touch 3G";if ([platform isEqualToString:@"iPod4,1"]) return @"iPod Touch 4G";if ([platform isEqualToString:@"iPod5,1"]) return @"iPod Touch 5G";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;
}

转自:http://www.jianshu.com/p/02bba9419df8

这篇关于iOS 如何获取手机型号、系统版本、电池电量的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/948191

相关文章

Prometheus+cpolar如何在手机上也能监控服务器状态?

《Prometheus+cpolar如何在手机上也能监控服务器状态?》本文强调了通过Cpolar这一内网穿透工具,轻松突破Prometheus仅限于局域网访问的限制,实现外网随时随地访问监控数据,教你... 目录前言1.安装prometheus2.安装cpolar实现随时随地开发3.配置公网地址4.保留固定

springboot的controller中如何获取applicatim.yml的配置值

《springboot的controller中如何获取applicatim.yml的配置值》本文介绍了在SpringBoot的Controller中获取application.yml配置值的四种方式,... 目录1. 使用@Value注解(最常用)application.yml 配置Controller 中

C++简单日志系统实现代码示例

《C++简单日志系统实现代码示例》日志系统是成熟软件中的一个重要组成部分,其记录软件的使用和运行行为,方便事后进行故障分析、数据统计等,:本文主要介绍C++简单日志系统实现的相关资料,文中通过代码... 目录前言Util.hppLevel.hppLogMsg.hppFormat.hppSink.hppBuf

golang实现nacos获取配置和服务注册-支持集群详解

《golang实现nacos获取配置和服务注册-支持集群详解》文章介绍了如何在Go语言中使用Nacos获取配置和服务注册,支持集群初始化,客户端结构体中的IpAddresses可以配置多个地址,新客户... 目录golang nacos获取配置和服务注册-支持集群初始化客户端可选参数配置new一个客户端 支

Python包管理工具uv下载python版本慢问题解决办法

《Python包管理工具uv下载python版本慢问题解决办法》uv是一个非常快的Python包和项目管理器,用Rust编写,使用热缓存安装Trio的依赖项的速度对比,:本文主要介绍Python包... 目录发现问题对于 MACOS / linux 用户 (zsh/bash):对于 Windows 用户:总

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

Java发送SNMP至交换机获取交换机状态实现方式

《Java发送SNMP至交换机获取交换机状态实现方式》文章介绍使用SNMP4J库(2.7.0)通过RCF1213-MIB协议获取交换机单/多路状态,需开启SNMP支持,重点对比SNMPv1、v2c、v... 目录交换机协议SNMP库获取交换机单路状态获取交换机多路状态总结交换机协议这里使用的交换机协议为常

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe