原创 iOS之深入瞭解控制器View的加載

我們會遇到這樣的問題,loadView有什麼作用,它與viewDidLoad有何區別,首先我們得知道,控制器view是通過懶加載的方式進行加載的,即用到的時候再加載。 loadView方法 當我們用到控制器view時,就會調

原创 iOS開發中xcode錯誤和異常處理

在開始這個的內容之前,我想先闡明兩個在很多時候被混淆的概念,那就是異常 (exception) 和錯誤 (error)。 在 Objective-C 開發中,異常往往是由程序員的錯誤導致的 app 無法繼續運行,比如我們向一個無法

原创 淺談IOS數據存儲

一、沙箱SandBox和Bundle的概念  個人覺得要弄懂數據存儲首先應該明確沙箱SandBox和Bundle的概念。  沙箱本意本來就是爲了說明程序資源和外界的隔離性。強調隔離! IOS中就是爲了說明各個應用程序之間的關係是孤立的,

原创 談談iOS多線程的鎖

前言 iOS開發中由於各種第三方庫的高度封裝,對鎖的使用很少,剛好之前面試中被問到的關於併發編程鎖的問題,都是一知半解,於是決定整理一下關於iOS中鎖的知識,爲大家查缺補漏。 目錄 第一部分: 什麼是鎖 第二部分: 鎖的分類 第三部分:

原创 iOS 10 的適配問題

前言 最近閒來無事,剛好看到之前做的一些關於iOS10的適配問題的筆記,下面就來做一下歸納 1.系統判斷方法失效 在你的項目中,當需要判斷系統版本的話,不要使用下面的方法: #define isiOS10 ([[[[UIDevice cu

原创 iOS視頻直播又一大神開源項目、RTMP 協議

隨着直播市場的火熱,市場大軍都逐步進入直播市場 ,騰訊旗下的NOW直播也不例外 先說說直播設計底層 一 、流媒體 1 - 僞流媒體 1.1 掃盲:邊下載邊播放 1.2 僞流媒體:視頻不是實時播放的,先把視頻放在數據庫,再供客戶端

原创 iOS獲取設備唯一標識

前言 目前市面應用普遍採用用戶體驗,涉及到部分重要功能時候才提醒用戶註冊賬戶,而用戶之前的操作,比如收藏,點贊,關注等內容需要同時關聯進註冊的賬戶,那麼根據什麼記錄用戶的操作信息就尤爲重要。下面就列出我之前收集資料總結的方案。 UDID

原创 App優化之路-IconFont

前言 關於性能優化這個話題很大,涉及面可以很廣,也可以很深入,本人能力有限,不會給大家講特別難懂,特別底層的東西,都是我們開發能着手去做的點,大家都在講性能優化,但對於項目經驗不夠豐富的朋友很難有一個概念,做優化的時候也會比較茫然,這裏

原创 手把手教你構建自己的CocoaPods倉庫

CocoaPods簡介 每種語言發展到一個階段,就會出現相應的依賴管理工具,例如Java語言的Maven,nodejs的npm。隨着iOS開發者的增多,業界也出現了爲iOS程序提供依賴管理的工具,它的名字叫做:CocoaPods。 C

原创 從Swift橋接文件到Clang-LLVM

前言 今天在Swift工程中不小心創建了一個OC文件,於是乎提示我創建一個橋接文件,那麼爲什麼需要創建橋接文件呢,它的原理又是什麼呢? 打開百度一搜,全是教你怎麼創建橋接文件的,似乎找不到答案~ LVVM - Low Level Vir

原创 VimTutor中文版

=============================================================================== = 歡 迎 閱 讀 《 V I M 教 程 》 —— 版本 1.7

原创 iOS測試與集成

前言 隨着測試在軟件開發週期中越來越受到重視,BAT大部分開始取消了測試工程師職位,全部變成了測試開發職位。需要在有測試能力的基礎上兼備開發能力;另一方面自動化測試成爲趨勢,利用開發的技巧解決測試中的問題以提高測試效率,降低QA與RD的人

原创 iOS開發之直播App流程介紹,直播資料收集彙總,視頻推流,視頻拉流,SMTP、RTMP、HLS、 PLPlayerKit

(一) iOS 直播類APP開發流程分解:  1 . 音視頻處理的一般流程: 數據採集→數據編碼→數據傳輸(流媒體服務器) →解碼數據→播放顯示 1、數據採集:攝像機及拾音器收集視頻及音頻數據,此時得到的爲原始數據 涉及技

原创 UIScrollView添加子控件約束的一些小總結

之前在使用AutoLayout給UIScrollView進行佈局的時候,總會出現點這樣那樣莫名其妙的問題.我也曾跳坑兩次,掙扎許久最後都以放棄storyboard改爲代碼實現而告終.今天終得正解,遂拿出來說說. 先從最基礎的開始,我們試着

原创 史上最全cocoaPods安裝及問題解決

前言 近期由於入手一臺iMac,要重新配置許多東西,衆所周知cocoaPods是iOS開發的利器,廢話不多說,下面開始安裝吧。 a.使用RVM對Ruby進行升級 先查看現在的Ruby版本號 輸入命令:ruby -v 安裝RVM RV