fishhook 實現(xiàn)的大致思路是,通過重新綁定符號,可以實現(xiàn)對 c 方法的 hook。dyld 是通過更新 Mach-O 二進制的 __DATA segment 特定的部分...
Flutter是基于Dart開發(fā)的語言,而且是強類型,靜態(tài)語言。所以類型檢查可以通過編譯器完成。而且Dart是一門面向?qū)ο蟮恼Z言。 JIT&AOT: JIT:即時編譯,開發(fā)期...
在macOS上搭建Flutter開發(fā)環(huán)境[https://flutterchina.club/setup-macos/] 開發(fā)環(huán)境的搭建可以參考上面鏈接Flutter中文網(wǎng),...
為了方便講解,以下列出isMemberOfClass和isKindOfClass的實例方法和類方法底層實現(xiàn) 由上圖可知: isMemberOfClass: 此處YYPerso...
app冷啟動概括為3大階段: 1、動態(tài)鏈接庫, 啟動app時,dyld會裝載app的可執(zhí)行文件,同時會遞歸加載所有依賴的動態(tài)庫,進行 rebase 指針調(diào)整和 bind 符號...
OC對象分為3種: instance對象(實例對象) class對象(類對象) meta-class對象(元類對象) OC對象的本質(zhì)是結構體,每一個對象內(nèi)部有一個isa指針(...
runtime怎么實現(xiàn)方法的調(diào)用 :消息機制,runtime系統(tǒng)會把方法調(diào)用轉(zhuǎn)化為消息發(fā)送。即objc-msgSend。并把方法的調(diào)用者和方法選擇器當做參數(shù)傳遞過去,這也是我...
啟動分為:熱啟動和冷啟動 1熱啟動:就是按下home鍵的時候,app還存在一段時間,這時點擊app馬上就能恢復到原狀態(tài),這種啟動我們稱為熱啟動。 2.冷啟動:app被kill...
項目中遇到需要自定義通知聲音的需求,以前沒做過,就查了下官方文檔,就像文檔上說的,實現(xiàn)起來確實挺簡單,就整理下當做備忘吧。 關于推送,官方文檔、各種第三方推送文檔都很全,就跳...
前言:最近看了篇關于iOS簽名機制的文章,不熟悉iOS簽名 或者只知道一些簡單的簽名操作的話可以看一看,有什么錯誤請批評指正。 1.首先要了解下一些基礎知識:對稱密碼,非對稱...