一、背景 最近Blurrr新版本需求出來了,需要iOS客戶端可以保存帶Alpha通道視頻。 那什么是帶Alpha通道的視頻呢?舉個(gè)栗子: 在視頻...
KVC 全名:Key-value coding,中文簡直編碼。蘋果對其定義如下: Key-value coding is a mechanism...
了解Runtime的同學(xué)應(yīng)該都聽說過或者使用過Method-Swizzling,今天我們就來一起了解下Method-Swizzling的使用以及...
上一篇中,我們分析了dyld,最后說到會(huì)調(diào)用_objc_init函數(shù),那_objc_init是干嘛的呢? 一、_objc_init 直接源碼中搜...
一、背景知識(shí) 1.靜態(tài)庫和動(dòng)態(tài)庫 1.1.庫 首先來看什么是庫,庫(Library)說白了就是一段編譯好的二進(jìn)制代碼,加上頭文件就可以供別人使用...
面試的時(shí)候,面試官經(jīng)常會(huì)問?如果調(diào)用的方法找不到時(shí),在奔潰之前系統(tǒng)會(huì)給我們?nèi)螜C(jī)會(huì)去挽救,避免APP直接崩潰。這三次機(jī)會(huì)分別是什么?他們的順序和...
上一篇我們分析了objc_msgSend的快速查找方法的流程,我們調(diào)用方法實(shí)際上就是發(fā)送消息,然后首先會(huì)到cache中進(jìn)行查找,也即是快速查找。...
在iOS開發(fā)中,我們常常會(huì)調(diào)用各種方法,既包括對象方法也包括類方法,那我們方法調(diào)用內(nèi)部到底是如何實(shí)現(xiàn)的呢?我們今天就來一起探索一下。 一、obj...
前面我們探索類的時(shí)候,了解類的結(jié)構(gòu)。并且有看到objc_class中包含cache屬性是用來做方法緩存的,其是一個(gè)cache_t結(jié)構(gòu)體,那cac...