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: ...
随机推荐
- 一站式远程页面调试工具spy-debugger 2.0,已支持HTTPS
项目名称: spy-debugger 项目地址:https://github.com/wuchangming/spy-debugger 关于spy-debugger npm Build Status ...
- PHP-HTML重要知识点笔记
1.用frameset.frame和iframe还实现多窗口 2.在图片上利用映射距离usemap来实现按钮跳转.------第8尾集 3.表单必须要有name和value,因为抓包的时候,可发现必须 ...
- TatukGIS - GisDefs - ColorToHSL 过程
过程名称 ColorToHSL 所在单元 GisDefs 过程原型 procedure ColorToHSL(const _color: TColor; var _h: Rea ...
- [BZOJ 2821] 作诗(Poetize) 【分块】
题目链接:BZOJ - 2821 题目分析 因为强制在线了,所以无法用莫队..可以使用分块来做. 做法是,将 n 个数分成 n/x 个块,每个块大小为 x .先预处理出 f[i][j] ,表示从第 i ...
- Blue Jeans
Description The Genographic Project is a research partnership between IBM and The National Geographi ...
- c++ explicit
C++ explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢? 如果c++类 ...
- 解决 SQL Server 耗尽内存的情况
如果您碰到SQL Server服务造成内存不断扩展最终系统死机等情况,请按照以下方法解决. 原理:SQL Server 2000引入的动态内存分配机制,一般不能很好的回收内存,如果计算机一直不关 ...
- First Bad Version——LeetCode
You are a product manager and currently leading a team to develop a new product. Unfortunately, the ...
- Cleaning Shifts(区间覆盖)
/* http://acm.hdu.edu.cn/webcontest/contest_showproblem.php?pid=1019&ojid=1&cid=10 题目: 给定一个时 ...
- Android中调用Paint的measureText()方法取得字符串显示的宽度值
1 public static float GetTextWidth(String text, float Size) { //第一个参数是要计算的字符串,第二个参数是字提大小 2 T ...