1. 程式人生 > >iOS 生成靜態庫.a檔案

iOS 生成靜態庫.a檔案

做iOS開發的同學們都知道,我們在開發的過程中經常用到一些第三方的庫,我們可以呼叫,但是看不見他們的原始碼。
有時我們不想別人看見我們的原始碼,也需要生成靜態庫,那怎麼生成呢?

首先,我們要建立一個CoCoa Touch Static Library工程


建立一個CoCoa Touch Static Library工程


這樣我們就會得到一個.h和.m檔案,我在.h檔案宣告兩個方法(加密,解密),還要在.m檔案寫它們的實現方法。


寫入程式碼

這樣我們就可以進行編譯了 (記得用模擬器和真機分別編譯一次)

快捷鍵:command+B

兩次編譯之後,找到StaticLibrary.a所在目錄


找到StaticLibrary.a所在目錄

在它的上一級目錄中我們可以看見Debug-iphoneosDebug-iphonesimulator兩個檔案,如圖:
如果你的工程是release模式,檔名為:Release-iphoneosRelease-iphonesimulator


編譯檔案

Debug-iphoneos:應用於真機的靜態庫檔案。
Debug-iphonesimulator:應用於模擬器除錯的靜態庫檔案。

我們可以通過lipo -info命令來檢視這個.a檔案的屬性。


檢視屬性

現在我們就可以用了 ,但是現在模擬器和真機編譯的.a檔案是分開的,我們在不同的環境上使用.a檔案,需要匯入不同的.a檔案,比較麻煩,我們可以把它們進行合併成一個檔案來使用。(只是體積會變大)
合併命令:lipo -create

/路徑/Debug-iphoneos/libStaticLibrary.a /路徑/Debug-iphonesimulator/libStaticLibrary.a -output
/Users/。。。。/Desktop/libStaticLibraryFile.a


合成檔案

合成完成了,就可以使用了。
把.h檔案和合成的.a檔案放入你的工程中測試一下吧~


測試結果

娛樂一下:



文/青樓(簡書作者)
原文連結:http://www.jianshu.com/p/9b06dc6acdec
著作權歸作者所有,轉載請聯絡作者獲得授權,並標註“簡書作者”。