元件26-二進位制:二進位制化-初級實踐方案-如何把原始碼手動打包成靜態庫並提交到遠端...
前面的22-25主要講了:二進位制化,為什麼要二進位制,打包靜態庫。
XMGDownLoad 是 原始碼
XMGDownLoadLib 是 二進位制的
1、拖程式碼到新建的空殼靜態庫工程中,把原始碼打包成靜態庫
2、靜態庫工程的配置:Build Active Architecure Only ——> NO(不止編譯活躍構架)
3、如果是.a的靜態庫工程,這步可以不用;如果是.framework,還要在targets>bulid settings>mach-O Type>static library
3、開啟release模式
4、暴露標頭檔案:有這麼多檔案,如果都暴露,太麻煩了;所以可以在主標頭檔案中匯入下。
5、編譯打包
6、用個podspec來描述打包好的元件。
外部:複製個podspec過來,修改podspec檔名和庫名相同;檔案內部:各個欄位的修改,描述的、遠端的、本地的。。。。
7、修改podspec,這裡重點描述的是products和Headers檔案,其他的不用管:關於宿主工程要方便用到.framework時候,.framework工程中還要做的一些事情(關於標頭檔案和podspec怎麼描述.framework)。
- 庫工程根目錄下,新建Headers,把products裡面的.h標頭檔案都複製到Headers中去(這樣避免匯入標頭檔案時候不方便,如# import <framework/framework.h>)
-
podspec的描述
8、git提交庫檔案到遠端
9、宿主使用
修改Podfile,pod 'XMGDownLoadLib',pod install。
10、這樣的弊端,要維護XMGDownLoad和XMGDownLoadLib兩個工程,宿主工程還要修改Podfile來切換原始碼和庫形式。如果庫很多,工作量就大了。
靜態庫打包路徑小技巧
小技巧,每次打包好,想找到product裡面的包,都要show In finder,才能找到;可以通過設定,把包放在工程下面,這樣原始碼和包都在工程資料夾下。
file>projective setting>advancert>custerm>修改
相關文章
- 如何把十進位制的數輸入用二進位制全加器,並以十進位制輸出
- 二進位制、十進位制與十六進位制相互轉化
- 二進位制與二進位制運算
- 什麼是二進位制?二進位制如何轉換?
- 進位制詳解:二進位制、八進位制和十六進位制
- JavaScript 二進位制、八進位制與十六進位制JavaScript
- Carthage和iOS元件二進位制化iOS元件
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- (二進位制)
- 二進位制
- 十進位制——二 (八、十六 )進位制
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- 二進位制轉十進位制快速方法
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- 火掌櫃iOS端基於CocoaPods的元件二進位制化實踐iOS元件
- js二進位制和十進位制轉換程式碼JS
- 二進位制反碼求和
- 04 二進位制
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- ASCII碼是幾位二進位制碼?ASCII
- 【Redis】原始碼編譯二進位制包Redis原始碼編譯
- 3416:【例72.1】 二進位制轉化為十進位制
- JavaScript十進位制轉換為二進位制JavaScript
- Oracle二進位制與十進位制轉換Oracle
- 十進位制轉二進位制推導(草稿)
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- python進位制轉換(二進位制、十進位制和十六進位制)及注意事項Python
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 遞迴函式實現十進位制正整數轉換為二進位制,八進位制,十六進位制遞迴函式
- Effective C# :建立二進位制元件C#元件
- 整數轉化成八進位制、十六進位制、二進位制,以及轉回
- 二進位制檔案視覺化(二)視覺化