AllYourMemoriesAreBelong2iOSiOS 調(diào)試工具
名字中有語法錯誤?
沒錯。
這是什么
AllYourMemoriesAreBelong2iOS 是一個方便的調(diào)試工具,其集成在 iOS 項(xiàng)目中,讓開發(fā)者在調(diào)試過程中可以通過按動 iOS 物理設(shè)備的音量鍵來模擬內(nèi)存警告通知的產(chǎn)生。該庫由 @開源中國真理部部長 使用 Objective-C 語言開發(fā),并在知識共享 (Common Creative) 署名-相同方式共享 4.0 國際許可協(xié)議下發(fā)布。
iOS 設(shè)備內(nèi)存有限,當(dāng)設(shè)備內(nèi)存不足時(shí),系統(tǒng)會向運(yùn)行中的應(yīng)用發(fā)送一條內(nèi)存過低警告通知。應(yīng)用收到該通知后,應(yīng)該立刻釋放當(dāng)前不需要使用的資源以及后期可以重新創(chuàng)建的對象。視圖控制器在收到該通知的同時(shí)還會收到 didReceiveMemoryWarning 消息,并且應(yīng)用的 AppDelegate 也會收到 applicationDidReceiveMemoryWarning: 消息。
在開發(fā)過程中,為了測試應(yīng)用能否對 iOS 系統(tǒng)的內(nèi)存警告通知作出正確響應(yīng),經(jīng)常需要開發(fā)者手動模擬該消息的產(chǎn)生。iOS 模擬器中提供了直觀的方式模擬向當(dāng)前運(yùn)行的應(yīng)用發(fā)送內(nèi)存使用警告。但是當(dāng)開發(fā)者需要在真機(jī)上測試該行為時(shí),并沒有公開的直觀方式模擬該警告。該工具可用來通過按動 iOS 設(shè)備的音量鍵非常方便地模擬真實(shí)設(shè)備上的內(nèi)存警告通知。
特性
-
通過簡單地按動 iOS 設(shè)備上的物理音量鍵來生成內(nèi)存警告通知
-
開箱即用 (works transparently)。也就是說,想要使用 AllYourMemoriesAreBelong2iOS,只需要將其以動態(tài)框架的方式連接到你的應(yīng)用中,構(gòu)建并運(yùn)行 Debug scheme。無需任何配置,無需在項(xiàng)目中引入任何頭文件,并且?guī)熘械拇a不會隨你的應(yīng)用的 Release 版本發(fā)布
-
支持對 Facebook 開發(fā)的 KVOController 的熱插拔。如果你的 app 鏈接了 KVOController.framework,那么 AllYourMemoriesAreBelong2iOS 內(nèi)部機(jī)制會自動利用其提供的現(xiàn)代化接口,否則則使用 Objective-C 標(biāo)準(zhǔn)庫提供的原生 KVO 接口
安裝
CocoaPods:
添加下面語句到你的 Podfile:
pod 'AllYourMemoriesAreBelong2iOS', '~>1.0.2'
Git Submodule:
-
使用 git submodule 將該倉庫 clone 并作為子模塊集成到你的項(xiàng)目中:
git submodule add https://github.com/TorinKwok/AllYourMemoriesAreBelong2iOS.git ${YOUR_DIR} --recursive -
點(diǎn)擊 Xcode 菜單欄中的 File->Add Files to "${YOUR_PROJECT_NAME}" 項(xiàng),然后選擇AllYourMemoriesAreBelong2iOS.xcodeproj
-
在 General 面板中鏈接 AllYourMemoriesAreBelong2iOS
如何使用
-
確保運(yùn)行你的項(xiàng)目的 Debug scheme。因?yàn)?AllYourMemoriesAreBelong2iOS 包含對 Apple 私有 API 的調(diào)用,而這會導(dǎo)致 Apple 拒絕你的 app 在 App Store 中上架。所以會在 Release scheme 中自動屏蔽實(shí)現(xiàn)代碼
-
運(yùn)行應(yīng)用,按動你的 iOS 設(shè)備的音量鍵以模擬系統(tǒng)內(nèi)存通知,你需要在 ViewControllers 的 didReceiveMemoryWarning 或 AppDelegate 的 applicationDidReceiveMemoryWarning: 中處理這些通知
聯(lián)系作者
-
電郵: dG9yaW5Aa3dvay5pbQ==(base64ed)
-
OpenPGP/GnuPG: 獲取公鑰
-
GitHub: @TorinKwok
