ios获取手机型号、系统版本、设备唯一标识符、手机运营商等

本文主要是介绍ios获取手机型号、系统版本、设备唯一标识符、手机运营商等,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

直接代码:

//设备唯一标识符NSString *identifierStr = [[[UIDevice currentDevice] identifierForVendor] UUIDString];NSLog(@"设备唯一标识符:%@",identifierStr);//手机别名: 用户定义的名称NSString* userPhoneName = [[UIDevice currentDevice] name];NSLog(@"手机别名: %@", userPhoneName);//设备名称NSString* deviceName = [[UIDevice currentDevice] systemName];NSLog(@"设备名称: %@",deviceName );//手机系统版本NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];NSLog(@"手机系统版本: %@", phoneVersion);//手机型号NSString * phoneModel =  [self deviceVersion];NSLog(@"手机型号:%@",phoneModel);//地方型号  (国际化区域名称)NSString* localPhoneModel = [[UIDevice currentDevice] localizedModel];NSLog(@"国际化区域名称: %@",localPhoneModel );NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];// 当前应用软件版本  比如:1.0.1NSString *appCurVersion = [infoDictionary objectForKey:@"CFBundleShortVersionString"];NSLog(@"当前应用软件版本:%@",appCurVersion);// 当前应用版本号码   int类型NSString *appCurVersionNum = [infoDictionary objectForKey:@"CFBundleVersion"];NSLog(@"当前应用版本号码:%@",appCurVersionNum);CGRect rect = [[UIScreen mainScreen] bounds];CGSize size = rect.size;CGFloat width = size.width;CGFloat height = size.height;NSLog(@"物理尺寸:%.0f × %.0f",width,height);CGFloat scale_screen = [UIScreen mainScreen].scale;NSLog(@"分辨率是:%.0f × %.0f",width*scale_screen ,height*scale_screen);CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];CTCarrier *carrier = info.subscriberCellularProvider;NSLog(@"运营商:%@", carrier.carrierName);

- (NSString*)deviceVersion
{// 需要#import "sys/utsname.h"struct utsname systemInfo;uname(&systemInfo);NSString * deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];//iPhoneif ([deviceString isEqualToString:@"iPhone1,1"])    return @"iPhone 1G";if ([deviceString isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";if ([deviceString isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";if ([deviceString isEqualToString:@"iPhone3,1"])    return @"iPhone 4";if ([deviceString isEqualToString:@"iPhone3,2"])    return @"Verizon iPhone 4";if ([deviceString isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";if ([deviceString isEqualToString:@"iPhone5,1"])    return @"iPhone 5";if ([deviceString isEqualToString:@"iPhone5,2"])    return @"iPhone 5";if ([deviceString isEqualToString:@"iPhone5,3"])    return @"iPhone 5C";if ([deviceString isEqualToString:@"iPhone5,4"])    return @"iPhone 5C";if ([deviceString isEqualToString:@"iPhone6,1"])    return @"iPhone 5S";if ([deviceString isEqualToString:@"iPhone6,2"])    return @"iPhone 5S";if ([deviceString isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";if ([deviceString isEqualToString:@"iPhone7,2"])    return @"iPhone 6";if ([deviceString isEqualToString:@"iPhone8,1"])    return @"iPhone 6s";if ([deviceString isEqualToString:@"iPhone8,2"])    return @"iPhone 6s Plus";return deviceString;
}

运行结果:

2016-05-18 14:38:23.247 获取手机信息[36680:1515571] 设备唯一标识符:3DCF9688-6946-4C30-8B27-377A7910DCB0

2016-05-18 14:38:23.248 获取手机信息[36680:1515571] 手机别名: iPhone Simulator

2016-05-18 14:38:23.248 获取手机信息[36680:1515571] 设备名称: iPhone OS

2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 手机系统版本: 9.3

2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 手机型号:x86_64

2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 国际化区域名称: iPhone

2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 当前应用软件版本:1.0

2016-05-18 14:38:23.250 获取手机信息[36680:1515571] 当前应用版本号码:1

2016-05-18 14:38:23.250 获取手机信息[36680:1515571] 物理尺寸:375 × 667

2016-05-18 14:38:23.250 获取手机信息[36680:1515571] 分辨率是:750 × 1334

2016-05-18 14:38:23.252 获取手机信息[36680:1515571] 运营商:(null)  //真机显示运营商


获取手机型号需要导入  

#import "sys/utsname.h"

获取运行商需要导入

#import <CoreTelephony/CTCarrier.h>

#import <CoreTelephony/CTTelephonyNetworkInfo.h>



这篇关于ios获取手机型号、系统版本、设备唯一标识符、手机运营商等的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

基于C++的UDP网络通信系统设计与实现详解

《基于C++的UDP网络通信系统设计与实现详解》在网络编程领域,UDP作为一种无连接的传输层协议,以其高效、低延迟的特性在实时性要求高的应用场景中占据重要地位,下面我们就来看看如何从零开始构建一个完整... 目录前言一、UDP服务器UdpServer.hpp1.1 基本框架设计1.2 初始化函数Init详解

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

C#如何在Excel文档中获取分页信息

《C#如何在Excel文档中获取分页信息》在日常工作中,我们经常需要处理大量的Excel数据,本文将深入探讨如何利用Spire.XLSfor.NET,高效准确地获取Excel文档中的分页信息,包括水平... 目录理解Excel中的分页机制借助 Spire.XLS for .NET 获取分页信息为什么选择 S

springboot3.x使用@NacosValue无法获取配置信息的解决过程

《springboot3.x使用@NacosValue无法获取配置信息的解决过程》在SpringBoot3.x中升级Nacos依赖后,使用@NacosValue无法动态获取配置,通过引入SpringC... 目录一、python问题描述二、解决方案总结一、问题描述springboot从2android.x

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