UIDevice 系统信息详解
获取当前设备
//获取当前设备 UIDevice *dev = [UIDevice currentDevice];
设备和系统基本信息
NSLog(@"设备名称:%@", dev.name);
NSLog(@"设备类型:%@", dev.model);
NSLog(@"本地化模式:%@", dev.localizedModel);
NSLog(@"系统名称:%@", dev.systemName);
NSLog(@"系统版本:%@", dev.systemVersion);
NSLog(@"设备朝向:%ld", dev.orientation);
NSLog(@"UUID:%@", dev.identifierForVendor.UUIDString);
设备类型判断
//判断设备种类
if (dev.userInterfaceIdiom == UIUserInterfaceIdiomPhone) {
NSLog(@"iPhone 设备");
}else if(dev.userInterfaceIdiom == UIUserInterfaceIdiomPad)
{
NSLog(@"iPad 设备");
} else if (dev.userInterfaceIdiom == UIUserInterfaceIdiomTV)
{
NSLog(@"Apple TV设备");
} else
{
NSLog(@"未知设备!!");
}
电池相关信息
//设置电池是否被监视
dev.batteryMonitoringEnabled = YES; //判断当前电池状态
if (dev.batteryState == UIDeviceBatteryStateUnknown) {
NSLog(@"UnKnow");
}else if (dev.batteryState == UIDeviceBatteryStateUnplugged){
NSLog(@"未充电");
}else if (dev.batteryState == UIDeviceBatteryStateCharging){
NSLog(@"正在充电,电量未满");
}else if (dev.batteryState == UIDeviceBatteryStateFull){
NSLog(@"正在充电,电量已满");
} //当前电量等级 [0.0, 1.0]
NSLog(@"%f",dev.batteryLevel);
UIDeviceBatteryLevelDidChangeNotification
//电池状态改变通知
UIDeviceBatteryStateDidChangeNotification
//以上两个通知需在 batteryMonitoringEnabled 设置为YES的情况下有效
红外线感应
//开启红外感应-- 用于检测手机是否靠近面部
dev.proximityMonitoringEnabled = YES;
if (dev.proximityState == YES) {
NSLog(@"靠近面部");
} else
{
NSLog(@"没有靠近");
}
多任务环境监测
//判断当前系统是否支持多任务
if (dev.isMultitaskingSupported == YES) {
NSLog(@"支持多任务!!!");
} else{
NSLog(@"不支持多任务!!!");
}
UIDevice 系统信息详解的更多相关文章
- 快学UiAutomator UiDevice API 详解
一.按键使用 返回值 方法名 说明 boolean pressBack() 模拟短按返回back键 boolean pressDPadCenter() 模拟按轨迹球中点按键 boolean press ...
- PHP 进程详解
.note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...
- Docker命令详解
Docker命令详解 最近学习Docker,将docker所有命令实验了一番,特整理如下: # docker --help Usage: docker [OPTIONS] COMMAND [arg ...
- SQL注入攻防入门详解
=============安全性篇目录============== 本文转载 毕业开始从事winfrm到今年转到 web ,在码农届已经足足混了快接近3年了,但是对安全方面的知识依旧薄弱,事实上是没机 ...
- SQL注入攻防入门详解(2)
SQL注入攻防入门详解 =============安全性篇目录============== 毕业开始从事winfrm到今年转到 web ,在码农届已经足足混了快接近3年了,但是对安全方面的知识依旧薄弱 ...
- Uiautomator ——API详解(转载http://www.cnblogs.com/by-dream/p/4921701.html)
转载来源: 简单的例子 以一个简单的例子开始吧.我们完成一个 " 打开QQ,进入QQ空间,然后退出 " 的case. 代码如下: package QQ; import java.i ...
- Linux /dev目录详解和Linux系统各个目录的作用
Linux /dev目录详解(转http://blog.csdn.net/maopig/article/details/7195048) 在linux下,/dev目录是很重要的,各种设备都在下面.下面 ...
- Windows WMIC命令使用详解
本文转载出处http://www.jb51.net/article/49987.htm www.makaidong.com/博客园文/32743.shtml wmic alias list brief ...
- net user命令集合详解
net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user: ...
随机推荐
- 基于Qt QGraphicsView的多点触摸绘图
本应用于基于QGraphicsView框架,实现多点触摸. 工程仅仅演示了多点触摸绘图,源自我前段时间一款基于Qt的绘图软件. 工程结构: kmp.h 定义了枚举 slide.h/cpp 定义了派生于 ...
- ThinkPHP 自动验证与自动填充无效可能的原因
原文链接:http://www.5idev.com/p-thinkphp_validate_auto_Invalid.shtml 自动验证与自动填充是在使用ThinkPHP时经常用到的功能,但偶尔会遇 ...
- DIV+CSS外部字体引用
注意: 由于各个浏览器兼容问题大家还是少用这个,下面是具体的使用方法和效果截图: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN&qu ...
- 认识Web和HTTP
一:了解Web. 首先,Web应用的产生起源于1989年,当时CERN(欧洲核子研究组织)的蒂姆·伯纳斯-李(Time BernersLee)博士提出了一种能让远隔两地的研究者们共享知识的设想.借 ...
- NameNode元数据的管理机制(三)
元数据的管理: 第一步:客户端通过DistributedFilesystem 对象中的creat()方法来创建文件,此时,RPC会 通过一个RPC链接协议来调用namenode,并在命名空间中创建一个 ...
- ps批量修改图片
批量更改图片尺寸的ps脚本 高端干货!PHOTOSHOP实用脚本大合集
- 单个ViewController支持横屏,其他全竖屏方法-b
如果项目中用了navigationViewController, 那么就应该新建一个uinavigationViewController的子类,然后在这个类里面写上下面的代码,在使用的时候就用自定义的 ...
- iOS中浅淡UIApplication单例-b
在iOS的操作系统中 每一个程序都对应一个application单例,每一个application都对应一个Appdelegate代理,在代理中控制程序的各个状态.我们在程序中获取Applicatio ...
- JSP 表单request内容
1. 表单request内容的获取 2. request.setCharacterEncoding("utf-8")对request内容进行编码 3. fullformreques ...
- core dump
Core Dump?! 整理:Wilbur Lang 何谓 core? 在使用半导体作为内存的材料前,人类是利用线圈当作内存的材料(发明 者为王安),线圈就叫作 core ,用线圈做的内存就叫作 co ...