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: ...
随机推荐
- iOS手势识别的详细使用(拖动,缩放,旋转,点击,手势依赖,自定义手势)
iOS手势识别的详细使用(拖动,缩放,旋转,点击,手势依赖,自定义手势) 1.UIGestureRecognizer介绍 手势识别在iOS上非常重要,手势操作移动设备的重要特征,极大的增加 ...
- NSValue NSNumber NSData类
NSValue NSNumber NSData类 步骤1 NSValue 我们先看看NSValue能做什么: 一个NSValue对象是用来存储一个C或者Objective-C数据的简单容器.它可以保存 ...
- hdfs 常用命令
(2)bin/hdfs dfs -mkdir -p /home/雨渐渐 (3)scp /media/root/DCE28B65E28B432E/download/第2周/ChinaHadoop第二讲\ ...
- One git command may cause you hacked(CVE-2014-9390)
0x00 背景 CVE-2014-9390是最近很火的一个漏洞,一个git命令就可能导致你被黑,我不打算深入探讨这个漏洞的细节,官方已经在https://github.com/blog/1938-gi ...
- SHell命令总结
cat files-to-copy.txt | xargs -i cp {} /tmp
- Find The Multiple(poj 1426)
Description Given a positive integer n, write a program to find out a nonzero multiple m of n whose ...
- LXC是如何与CGROUP,namespace扯上关系的?再加上DOCKER.IO。完美!!!
最后还余下网络去攻克了. 不同的模板,只是在同一个LINUX内核上去实现不同的发行版的特性. 终归,都是用同样的内核来实现调度.故而是一个轻量极的方案. 而不像KVM一样,GUEST OS里的CPU也 ...
- Visual C++ 8.0对象布局的奥秘:虚函数、多继承、虚拟继承(VC直接输出内存布局)
原文:VC8_Object_Layout_Secret.html 哈哈,从M$ Visual C++ Team的Andy Rich那里又偷学到一招:VC8的隐含编译项/d1reportSingleCl ...
- 16.缓存(Cache)
如果每次进入页面的时候都查询数据库生成页面内容的话,如果访问量非常大,则网站性能会非常差.而如果只有第一次访问的时候才查询数据库生成页面内容,以后都直接输出内容,则能提高系统性能,这样无论有多少人访问 ...
- java 实现多种排序
public class Sort { //交换两个数 private void swap(int[] arr, int i,int j){ int temp = a ...