iOS開發中打包.a靜態庫教程,ios.a
1.建立.a靜態庫工程
需要選擇Static Library靜態庫工程模板建立工程,如:
建立靜態庫工程
實現需要打包的類,如:
實現需要打包的類
2.設定需要暴露的標頭檔
添加Headers, 步驟為:TARGET->Build Phases ->點+號->New Headers Phase,如:
然後找到Heaers(0 items)一欄, 點+號添加標頭檔, 如:
接著添加需要公開的標頭檔Encryption.h, 如:
添加完成後, Encryption.h會出現在Project一欄中, 需要手動拖入Public一欄中進行公開, 如:
拖入後, Public中的標頭檔就是公開的標頭檔了, 如:
3.設定Scheme
選擇Edit Scheme,如:
選擇Debug模式,如:
4.編譯模擬器版本的.a靜態庫
選擇模擬器,如:
選擇模擬器後開始編譯,編譯成功後,Products中的libEncryption.a會由紅色變為黑色,如:
5.編譯真機版本的.a靜態庫
選擇真機,如:
選擇真機後開始編譯,編譯成功後,Products中的libEncryption.a也會由紅色變為黑色.
6.合并類比版本和真機版本的靜態庫
選擇libEncryption.a,右鍵選擇Show in Finder,如:
進入Finder後,可以看到編譯後的模擬器和真機版本的.a靜態庫,如:
開啟終端,使用命令列進行版本合并,具體格式為:
lipo -create "真機版本.a靜態庫路徑" "模擬器版本.a靜態庫路徑" -output "合并後的.a靜態庫路徑"
注意中間要有空格.
在終端中輸入命令列,如:
終端執行成功後會產生一個合并版本的.a靜態庫,如:
7.測試靜態庫
建立工程,將libEncryption.a和Encryption.h檔案拖入工程,如:
在ViewController.m引入Encryption.h標頭檔,調用Encryption.h暴露出來的加密方法,ViewController.m中代碼如下:
#import "ViewController.h"#import "Encryption.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];//調用Encryption中的加密方法NSLog(@"-----%@", [Encryption md5EncryptWithString:@"hello"]);}- (void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated.}@end
調試視窗成功輸出列印資訊,如:
至此,.a靜態庫製作完畢!