原创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