獲取iOS系統版本,謹慎使用[[[UIDevice currentDevice] systemVersion] floatValue]

最近分享了iOS開發中相關的一些宏定義,其中涉及到判斷iOS的版本號的宏,有簡友評論這個方法不靠譜,建議我找個更好的方法,于是我百度搜了下,并做了個總結:

iOS 最常見的獲取系統版本號的方法是:

[[[UIDevice currentDevice] systemVersion] floatValue]

但是,這個floatValue是不靠譜的,這也算是iOS SDK的一個bug吧。看一下上面的函數在8.2系統上的表現。如果代碼中有 if( version >= 8.2) 的判斷,則該判斷會失效!

屏幕快照 2016-09-07 09.33.46.png

這時如果使用字符串對比版本號,則不會出問題


屏幕快照 2016-09-07 09.34.06.png

但是如果你對版本判斷要求不是很嚴格的話,如果只是判斷是否是iOS8,7的話,這個方法還是很好用的

轉自:http://www.bkjia.com/Androidjc/1013445.html

有問題歡迎指正!!!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容