iOS SDK具体解释之UIDevice(系统版本号,设备型号...)
原创Blog,转载请注明出处
blog.csdn.net/hello_hwc
欢迎关注我的iOS SDK具体解释专栏
blog.csdn.net/column/details/huangwenchen-ios-sdk.html
前言:UIDevice是刚開始学习的人非常easy忽视的一个类。通过这个类的API能够非常easy的获取到当前的设备信息,系统信息。
没什么难度,本文会具体的阐述各个属性。
本文的输出值都是在我的iPhone 5s下的值
设备
设备名称
返回类型String
let deviceName = UIDevice.currentDevice().name //***的iPhone
系统版本号
返回类型String
let systemName = UIDevice.currentDevice().systemName//iPhone OS
let systemVersion = currentDevice.systemVersion// 8.3
设备型号
返回类型String
let deviceModel = UIDevice.currentDevice().model// iPhone
let localModel = UIDevice.currentDevice().localizedModel// iPhone
ipad/Iphone
返回类型UIUserInterfaceIdiom
有三种
enum UIUserInterfaceIdiom : Int {
case Unspecified
case Phone //iPhone 和 iTouch
case Pad //Ipad
}
let deviceType = UIDevice.currentDevice().userInterfaceIdiom//Phone
厂商
返回类型NSUUID!
let vender = UIDevice.currentDevice().identifierForVendor
电池
剩余电量 -batteryLevel
返回float,0到1之间,1代表100%电量
电量的状态-batteryState
返回UIDeviceBatteryState
enum UIDeviceBatteryState : Int {
case Unknown //未知
case Unplugged//没有在充电
case Charging//在充电
case Full//满电
}
是否监听电量-batteryMonitoringEnabled
假设设为YES,则能够监听电量的变化和获取电量的状态。默觉得NO
UIDevice.currentDevice().batteryMonitoringEnabled = true
let batteryLevel = UIDevice.currentDevice().batteryLevel//0.550000012
let batteryState = UIDevice.currentDevice().batteryState//Charging
有两个notification能够订阅
- UIDeviceBatteryStateDidChangeNotification
- UIDeviceOrientationDidChangeNotification
设备旋转
注意。这里的是设备的物理方向,不是屏幕的方向
获取设备的物理方向-orientation
返回类型
enum UIDeviceOrientation : Int {
case Unknown
case Portrait
case PortraitUpsideDown
case LandscapeLeft
case LandscapeRight
case FaceUp
case FaceDown
}
是否发送通知-generatesDeviceOrientationNotifications
假设是YES,那么设备方向改变了,会post这个通知UIDeviceOrientationDidChangeNotification 。当然这个通知也是能够订阅的。
注意,获取方向的时候要在这两个函数之间获取
UIDevice.currentDevice().beginGeneratingDeviceOrientationNotifications()
let orientation = UIDevice.currentDevice().orientation//Portrait UIDevice.currentDevice().endGeneratingDeviceOrientationNotifications()
设备是否接近脸
proximityMonitoringEnabled
proximityState
是否支持多任务
multitaskingSupported
播放输入的声音
playInputClick()
须要在自己定义的输入view下这么做
- 让自己定义输入视图遵循
UIInputViewAudioFeedback protocol
- 实现方法
enableInputClicksWhenVisible
而且返回true
iOS SDK具体解释之UIDevice(系统版本号,设备型号...)的更多相关文章
- iOS SDK具体解释之NSCopying协议
原创blog,转载请注明出处 http://blog.csdn.net/hello_hwc?viewmode=contents 欢迎关注我的iOS SDK具体解释专栏 http://blog.csdn ...
- 让iOS应用支持不同版本的系统与设备
本文转载至 http://blog.csdn.net/pucker/article/details/11980811 最近一直在做app的iOS 6和7的同时适配工作,所以在此介绍一下系统与设备的兼 ...
- Swift - 获取应用名称、应用版本、设备型号、系统版本等信息
有时我们在 App 中提交一些统计信息或者用户反馈信息时,为了能更好地进行分析,通常会附带上当前应用程序的名称.版本号.设备型号.以及设备系统版本.下面演示如何获取这些信息. 1,效果图 程序启动后自 ...
- 获取iOS系统版本号,慎重使用[[[UIDevice currentDevice] systemVersion] floatValue]——【sdk缺陷】
iOS 最常见的获取系统版本的方法是: [[[UIDevice currentDevice] systemVersion] floatValue] 可是.这个floatValue是不靠谱的,这也算是i ...
- 获取设备IMEI ,手机名称,系统SDK版本号,系统版本号
1.获取设备IMEI TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); Str ...
- android 获取手机型号,本机电话号码,SDK版本以及firmwarw版本号(即系统版本号)
Android开发平台中,可通过TelephonyManager 获取本机号码. TelephonyManager phoneMgr=(TelephonyManager)this.getSystemS ...
- iOS SDK开发汇总
以前也做过静态库的开发,不过都是一些简单的调用,最近在做项目的时候,发现其中还有很多问题,所以建个小项目简单记录遇到的问题以及正确的解决办法. 在项目中遇到的问题如下:xib文件获取不到, story ...
- ios 获取手机信息(UIDevice、NSBundle、NSLocale)
iOS的SDK中提供了UIDevice.NSBundle,NSLocale. UIDevice UIDevice提供了多种属性.类函数及状态通知,帮助我们全方位了解设备状况. 从检測电池 ...
- iOS开发 获取手机信息(UIDevice,NSBundle,NSlocale)
在开发中,需要获取当前设备的一些信息,可以通过UIDevice,NSbundle,NSlocale获取. UIDevice UIDevice 提供了多种属性,类函数及状态通知,可以检测手机电量,定位, ...
随机推荐
- Php中常见的4种随机密码生成方法详解
使用PHP开发应用程序,尤其是网站程序,常常需要生成随机密码,如用户注册生成随机密码,用户重置密码也需要生成一个随机的密码.随机密码也就是一串固定长度的字符串,这里我收集整理了几种生成随机字符串的方法 ...
- [AHOI2017/HNOI2017][bzoj4827] 礼物 [FFT]
题面 传送门 思路 首先,有一个结论:两个手环增加非负整数亮度,等于其中一个增加一个整数亮度(可以为负) 我们令增加量为$x$,旋转以后的原数列为${a}{b}$那么现在的费用就是: $\sum_{i ...
- Databus架构分析与初步实践
简介 Databus是一个低延迟.可靠的.支持事务的.保持一致性的数据变更抓取系统.由LinkedIn于2013年开源.Databus通过挖掘数据库日志的方式,将数据库变更实时.可靠的从数据库拉取出来 ...
- onCreate、onStart、onResume、onPause、onStop、onDestory(转)
程序正常启动:onCreate()->onStart()->onResume();正常退出:onPause()->onStop()->onDestory() 一个Activit ...
- js 验证数字的正则表达式集
<script type="text/javascript"> function validate(){ var reg = new RegExp( ...
- Android新特性之CardView的简单使用
Android新特性之CardView的简单使用 我们学习下Android5.0的新增加的控件CardView.首先我们了解一下CardView的基本使用,然后结合RecycleView使用CardV ...
- 从C的声明符到Objective-C的Blocks语法
原文链接:http://nilsou.com/blog/2013/08/21/objective-c-blocks-syntax/ 在这个post中,我先以C简单和内置复杂的声明开始,直到我们开始接触 ...
- 获取Android系统默认给每个app分配的内存上限
ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); int ...
- Java的日志模块
目前主流的是是logback和log4j2,它们底层实现用的都是slf4j,通过slf4j-api调用 使用指定类初始化日志对象,在日志输出的时候,可以打印出日志信息所在类如:Logger logge ...
- CityEngine结合ArcGIS制作地质体web场景 [转]
CityEnginewebWebWEB地质体 原文地址:http://www.cnblogs.com/esrichina/archive/2012/11/12/2762163.html 当我们想要对地 ...