? ? OC語言有.h .m 文件組成彤路。靜態(tài)庫可以將 .m文件封裝成到個(gè).a文件宰睡,第三方應(yīng)用程序只需要拿到這個(gè).a文件和代碼對應(yīng)的.h文件即可使用靜態(tài)庫中封裝的方法盏阶。IOS靜態(tài)庫適合去制作第三方提供的SDK。
第一步
1.首先創(chuàng)建一個(gè)新的工程,選擇Framework
&Libryary,在選擇Cocoa Touch Static Library 工程名自己定義
2.接下來你會看到自動生成.h和.m文件 可以在.m文件中寫你要的代碼
3.我們來創(chuàng)建一個(gè)簡單的代碼
.h文件如下
- (int)addMethod:(int)theFirst :(int)theSecond;
.m文件如下
- (int)addMethod:(int)theFirst :(int)theSecond{
return (theFirst+theSecond);
4.接下來就是編譯生成.a文件了
快捷鍵(command+B)選中真機(jī)編譯和選中模擬機(jī)編譯對應(yīng)生成的連個(gè).a文件一個(gè)是真機(jī)的一個(gè)是模擬機(jī)的
這時(shí)候去資源庫里查找編譯生成的.a文件
找到 前往 然后 按著 option 快捷鍵 你會看到 資源庫 點(diǎn)擊 如圖
資源庫/developer/Xcode/DerivedData/GeberateFaile....../Build/Products/Release-iphoneos(其中Release-iphoneos和Release-iphoneosmulator一個(gè)是模擬器的一個(gè)是真機(jī)的.a文件)
4.接下來就是將你生成的.a文件引入到你想加入的工程中
引入方法:直接將上圖你所看到的include文件夾中所有的.h文件(即include里面全部.h文件)和下邊對應(yīng)的.a文件直接拖到你的工程中 千萬注意(copy items if needed)
5.添加成功后就可以直接使用了 但是需要注意的是 如果你是選擇模擬器編譯生成的.a文件那么在真機(jī)運(yùn)行的時(shí)候是會報(bào)錯(cuò)的 所以為了可以使用真機(jī)和模擬器都可以使用.a文件可以合并成為一個(gè).a文件 使用終端合成具體方法如下:
ZXYdeMacBook-Pro:~zxy$ lipo -create /所在路徑/Release-iphoneos/libGenerateFaile.a /所在路徑/Release-iphonesimulator/libGenerateFaile.a -output /Users/zxy/Desktop/libUniversal.a
這樣裁蚁,就可以合并成一個(gè)通用的靜態(tài)庫,唯一的缺點(diǎn)是體積要大一點(diǎn)相對于真機(jī)和模擬器兩個(gè)的總大小 之后將這個(gè)靜態(tài)庫拖到工程中即可