iOS获取设备型号和App版本号等信息(OC+Swift)
iOS获取设备型号和App版本号等信息(OC+Swift)
字数1687 阅读382 评论3 喜欢10
好久没有写过博客了,因为中间工作比较忙,然后有些个人事情所以耽误了。但是之前写的博客还一直有人来问一些问题,有些之前写的已经比较久了,有些需要实时更新的也没来得及更新,发现会跟一些童鞋造成困惑,所以以后也希望能及时更新和写一些新的内容。
我之前博客的地址:一毛的博客,也是主要介绍iOS开发的,以后都在简书更新吧。希望大家能继续支持。
iOS开发过程中,有时候为了更好的用户体验或者为了bug跟踪,可能会需要获取用户的应用信息、系统信息、设备信息。这些信息的获取可以根据不同的设备或者App、系统版本来提供不同的功能或更好的用户体验,或者让开发者能更好的分析用户的问题原因。
你说不要啰嗦了:Talk is cheap, show me the code!
好的,code来了:
获取设备名称
OC代码
NSString *deviceName = [[UIDevice currentDevice] name];
Swift代码
let deviceName = UIDevice.currentDevice().name
获取系统版本号
OC代码
NSString *sysVersion = [[UIDevice currentDevice] systemVersion];
Swift代码
let sysVersion = UIDevice.currentDevice().systemVersion
获取设备唯一标识符
OC代码
NSString *deviceUUID = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
Swift代码
let deviceUUID = UIDevice.currentDevice().identifierForVendor?.UUIDString
获取设备的型号
OC代码
NSString *deviceModel = [[UIDevice currentDevice] model];
Swift代码
let deviceModel = UIDevice.currentDevice().model
获取App相关的信息
OC代码
NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];
// 获取App的版本号
NSString *appVersion = [infoDic objectForKey:@"CFBundleShortVersionString"];
// 获取App的build版本
NSString *appBuildVersion = [infoDic objectForKey:@"CFBundleVersion"];
// 获取App的名称
NSString *appName = [infoDic objectForKey:@"CFBundleDisplayName"];
Swift代码
let infoDic = NSBundle.mainBundle().infoDictionary
// 获取App的版本号
let appVersion = infoDic?["CFBundleShortVersionString"]
// 获取App的build版本
let appBuildVersion = infoDic?["CFBundleVersion"]
// 获取App的名称
let appName = infoDic?["CFBundleDisplayName"]
有些人可能会说了:“裤子都脱了,你就给我看这个!看你之前写的博客还能看点儿干货,今天第一篇就写着么个玩意儿?尤其是获取设备型号那个,获取出来一个iPhone,你确定不是在逗我吧?”
看官别急,其实这次最主要的就是来分享获取设备型号的方法的,因为我看国内还很少有Swift写的一些东西,也不知道是不是因为我没有找到,就想自己写出来给大家分享,顺便做个笔记。
你会说:获取设备型号比较麻烦,又用的是C语言的一些东西,比较麻烦,而且还得记住所有设备版本号例如:iPhone8,2,实在是记不住啊。当然不用记住,用的时候拷过来就行了,因为我也记不住
最新文章
- Jenkins的一个bug-同时build一个项目两次导致失败
- 关于Java中进程和线程的详解
- easyUI在IE浏览器中列表不显示
- 【环境配置】php5.5 + apache2.4 安装配置【转+修改】
- C与C++之间相互调用
- VM不能连入局域网
- Python的排序
- 关于HTTP协议的学习
- GridView控件RowDataBound事件中获取列字段值的几种途径
- 검색엔진의 크롤링과 인덱싱의 차이 (robots.txt 파일과 meta robots 태그의 차이점)
- ie8下jquery读取当前点击的标签位置错误,原因是里面有内容写了text-indent:-9999px
- js深入理解";闭包";
- Python一些字符串判断和转换
- Python 2.7 学习笔记 元组的使用
- WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[元数据描述篇]
- Java知多少(4)J2SE、J2EE、J2ME的区别
- 【Maven】项目中没有resources目录
- 在Github上面搭建一个自己域名的Hexo博客
- Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分
- 笔记-JS高级程序设计-基本概念篇
热门文章
- TokuDB性能测试报告
- 1293: [SCOI2009]生日礼物
- vector 对象中存放指针类型数据
- AndroidTest工程的自定义gradle task
- Android Weekly Notes Issue #248
- yii 常用一些调用 (增加中)
- Java基础——深入理解Java中的final关键字(转载)
- 如何在RecyclerView上面实现";拖放";和";滑动删除";-1
- VAO VBO IBO大乱炖
- 定时任务框架APScheduler学习详解