首先來談談為什么要使用靜態(tài)庫(.a 文件),使用靜態(tài)庫(.a 文件)有什么好處?
為什么使用靜態(tài)庫(.a)文件
總所周知, Objective-c語言有.h .m 文件組成, 靜態(tài)庫可以將.m 文件封裝成一個.a 文件, 第三方應用程序只需要拿到這個.a 文件和對應的.h 文件即可使用靜態(tài)庫中封裝的方法.
使用靜態(tài)庫(.a文件)的好處
在我看來, 靜態(tài)庫只提供第三方應用程序 .h文件 和 .a文件, 沒有自己封裝的方法具體實現(xiàn)文件(.m文件)暴露出來, 防止用戶自己修改 或者是 惡意攻擊. iOS靜態(tài)庫適合去制作第三方提供的SDK.
具體實現(xiàn)步驟
第一步: 創(chuàng)建一個新的工程, 選擇 iOS -> Framework & Library 里面的 Cocoa Touch Static Library, 然后點擊Next
如何所示:
第二步: 點擊Next 后, 為你的靜態(tài)庫去一個名字(自己定義, 但要做到見名知義)
例:我取的靜態(tài)庫名字是 TestDotADemo, 然后點擊Next, 選擇存放的地址.
如圖所示:
第三步: 選擇完,存放的地址后, 系統(tǒng)會自動生成.h 文件 和 .m文件.
如圖所示:
第四步: 接下來就是在.h文件聲明方法(實例方法 / 類方法 都可以), 這里以類方法為例.
如圖所示:
第五步: 在.m文件實現(xiàn)在.h文件聲明的方法.
如圖所示:
第六步: 接下來就是最重要的生成 .a文件
使用快捷鍵( common + b)
選擇真機生成只能在真機運行的.a 文件
選擇模擬器生成只能在模擬器運行的.a 文件
為了解決 真機 和模擬器都能運行的.a 文件(但是這里會有個坑, 下面會提及到), 看下面有詳細的介紹.
先 生成一個真機.a 文件, 如圖所示:
生成 模擬器.a文件方法與生成真機.a 文件 一樣.
第七步: 到了這里靜態(tài)庫就已經生成好了, 但是你會有疑問, 生成的.a 文件怎么查看呢.
如圖所有:
查看的結果, 如圖所示:
第八步: 如何使用 生成的靜態(tài)庫, 在自己的應用程序了,拷貝 上圖中 include 文件夾 和生成的.a 文件 到自己的工程中.
引入工程的時候一定要注意下面的點, 如圖所示:
查看是否添加進工程, 如圖所示:
教你如何使用
第一步: 引入頭文件
第二步: 調用類方法
如圖所示: