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 提供了多种属性,类函数及状态通知,可以检测手机电量,定位, ...
随机推荐
- [HDU3480] Division [四边形不等式dp]
题面: 传送门 思路: 因为集合可以无序选择,所以我们先把输入数据排个序 然后发先可以动归一波 设$dp\left[i\right]\left[j\right]$表示前j个数中分了i个集合,$w\le ...
- ssh(安全协议外壳)
以下来源于百度百科 https://baike.baidu.com/item/ssh/10407?fr=aladdin SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Netw ...
- nodeJS学习(3)--- npm 配置和安装 express4.X 遇到的问题及解决
前言:懒得看前面两篇介绍的也可以从本节直接参考,但建议最好了解下,因为 4.X 的express 已经把命令行工具分离出来 (链接https://github.com/expressjs/genera ...
- Codevs 1315 摆花
1315 摆花 2012年NOIP全国联赛普及组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 小明的花店新开张,为了吸引顾客,他 ...
- Eclipse与MyEclipse修改注释字体颜色
修改配置路劲 Window--->Preferences--->Java--->Editor--->Syntax Coloring--->Element--->Co ...
- jquery bind event, use on. $(document).on("click","#a",function(){alert(1)}) [#document]
$(document).on("click","#a",function(){alert(1)}) [#document] as a replacement o ...
- Codeforces 920E Connected Components? 补图连通块个数
题目链接 题意 对给定的一张图,求其补图的联通块个数及大小. 思路 参考 ww140142. 维护一个链表,里面存放未归入到任何一个连通块中的点,即有必要从其开始进行拓展的点. 对于每个这样的点,从它 ...
- webpack 2.6.1配置笔记
2017-09-11更新:更新到webpack 2.6.1所对应的配置,完善部分代码注释. 由于最近在vue-cli生成的webpack模板项目的基础上写一个小东西,开发过程中需要改动到build和c ...
- Android布局实现阴影效果
最近某个模块的UI,设计想要卡片式阴影效果.之前查阅过资料,用传统的xml方式作为布局的background <?xml version="1.0" encoding=&qu ...
- jdbc in postgres
try { Class.forName("org.postgresql.Driver").newInstance(); String url = "jdbc:postgr ...