借鑒文章:www.2cto.com/kf/201604/501934.html
中間使用的封裝UI WSLoginView來自:github.com/Zws-China/WSLoginView
首先創(chuàng)建一個靜態(tài)庫文件(本文使用Xcode8.2.1)
打開Xcode 選擇iOS 下 Framework&Library 下的Cocoa Touch Static Library
創(chuàng)建一個任意命名的工程,我創(chuàng)建的是NewSDK限煞,然后保存工程抹恳。
一個靜態(tài)庫工程由頭文件和實現(xiàn)文件組成,這些文件將被編譯為庫本身署驻。
當創(chuàng)建靜態(tài)庫工程時奋献,Xcode會自動添加NewSDK.h和NewSDK.m健霹。你不需要實現(xiàn)文件,因此右鍵單擊NewSDK.m選擇delete瓶蚂,將它刪除到廢紙簍中糖埋。
為工程添加功能 此處使用的是WSLoginView?
將你的控件從Finder中拖到Xcode下NewSDK目錄下 此處需要勾選add to targets NewSDK
在NewSDK.h中 導入WSLoginView ?
靜態(tài)庫分為模擬器使用和手機使用 ?
首先以模擬器為例 :
當生成的靜態(tài)文件.a為紅色時 ?需要模擬器編譯一下 com + B 或者點擊運行一下子,才會變成黑色
然后show in finder 將編譯完成的.a文件和所有的.h 文件和資源圖片文件放到一個新的目錄下
然后將此文件夾放入一個iOS工程下
在需要調(diào)用的地方導入 #import"NewSDK.h",添加實現(xiàn)方法扬跋,就可以在模擬器下運行了
真機下靜態(tài)庫生成
真機與模擬器下靜態(tài)庫的生成的區(qū)別在于此處選擇的是真機還是模擬器 阶捆,其他沒有區(qū)別
合并模擬器和真機靜態(tài)庫
把真機下和模擬器下.a文件放在同一目錄凌节,
使用命令合并 lipo -create libNewSDK.a libNewSDKDevice.a -ouput LibNewSDKBoth.a
會在目錄下生成合并后的靜態(tài)庫文件 LibNewSDKBoth.a
libNewSDK.a: 生成的模擬器.a文件
libNewSDKDevice.a:生成的真機.a文件
libNewSDKBoth.a:合并后的結果
使用命令 lipo -info libNewSDKBoth.a? 可查看結果? 如果同時支持 armv7? x86_64 代表合并成功