iOS 深入理解framework
//聯系人:石虎?QQ:1224614774?昵稱:嗡嘛呢叭咪
一、概念
1.framework(框架,其實相當于靜態框架,不是動態庫)
2.打包framework還是一個比較重要的功能,可以用來做一下事情:
(1)封裝功能模塊,比如有比較成熟的功能模塊封裝成一個包,然后以后自己或其他同事用起來比較方便。
(2)封裝項目,兩個項目相似或者嵌套,此時把嵌套的項目打包成framework放進去,這樣比較方便。
二、為什么需要框架(Framework)
1.移除靜態iOS框架
? ?要想用一種開發者友好的方式共享庫是很麻煩的。你不僅僅需要包含庫本身,還要加入所有的頭文件,資源等等。
? ?蘋果解決這個問題的方式是框架(framework)。基本上,這是含有固定結構并包含了引用該庫時所必需的所有東西的文件夾。不幸的是,iOS禁止所有的動態庫。同時,蘋果也從Xcode中移除了創建靜態iOS框架的功能。
? ?Xcode仍然可以支持創建框架的功能,重啟這個功能,我們需要對Xcode做一些小小的改動。
? ?把代碼封裝在靜態框架是被app store所允許的。盡管形式不同,本質上它仍然是一種靜態庫。
2.框架(Framework)的類別
? ?大部分框架都是動態鏈接庫的形式。因為只有蘋果才能在iOS設備上安裝動態庫,所以我們無法創建這種類型的框架。
? ?靜態鏈接庫和動態庫一樣,只不過它是在編譯時鏈接二進制代碼,因此使用靜態庫不會有動態庫那樣的問題(即除了蘋果誰也不能在iOS上使用動態庫)。
? ?“偽”框架是通過破解Xcode的目標Bundle(使用某些腳本)來實現的。它在表面上以及使用時跟靜態框架并無區別。“偽”框架項目的功能幾 乎和真實的框架項目沒有區別(不是全部)。
? ?“嵌入”框架是靜態框架的一個包裝,以便Xcode能獲取框架內的資源(圖片、plist、nib等)。
? ? 本次發布包括了創建靜態框架和“偽”框架的模板,以及二者的“嵌入”框架。
謝謝!!!
總結
以上是生活随笔為你收集整理的iOS 深入理解framework的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 文艺常识2
- 下一篇: 国内人工智能行业全梳理