1. 程式人生 > >私有元件pod 新增支援斷點除錯的靜態庫

私有元件pod 新增支援斷點除錯的靜態庫

我們在給外部提供的sdk 通常使用靜態庫而不暴露內部程式碼

而我們自己在專案中測試的時候,都是將靜態庫的標頭檔案

連結到對應的靜態庫的.h檔案中

一般來講都是一個workspace 然後新增靜態庫的工程

新增.a庫路徑 新增標頭檔案路徑,再執行就可以將斷點

打到靜態庫的project 裡面去。

而在元件化的工程的pod庫中,怎麼把斷點也能打到對應的

project 裡面去呢。

方式就是將podspec 的路徑放到最外面,不放在最外面會讀不出來。

然後將你手動修改的標頭檔案路徑和.a庫的位置用spec 的語法寫出來

最後pod install 即可

這是最終生成的結果,
這裡寫圖片描述

如果沒有進入斷點,說明.a庫 和pod裡面不是同一個,應該先執行一下靜態庫,
在執行一下工程。

這裡是配置靜態庫打出來的.a庫的位置, 你可以自己寫個路徑,我這裡沒做真機和
模擬器的合併,你可以自己做,
這裡寫圖片描述

為什麼要改寫這個路徑,因為蘋果每次打出來的路徑都在緩衝路徑裡面的,你都讀不到,找個固定的位置,才能給別的工程使用。

pod 本地的這個專案即可
這裡寫圖片描述

這裡是podspec 的語法寫法,注意最後三行
倒數第三行是把.h加進去,
最後兩行是把.a靜態庫加進去
但實際上只是把靜態庫專案中的檔案做了個引用,並沒真正重新拷貝一份
這裡寫圖片描述

最後看一下專案中的podsepc 的位置,是在整個專案的前面的,
我試過寫在裡面,發現相對路徑都讀不到,所以要使用這個的時候,一定要把路徑寫在
最外面

這裡寫圖片描述

到這裡整個專案就完成了。

這裡只是一個非常簡單的專案,如果你的靜態庫需要做元件化下的斷點除錯,

那這就是你要找到的答案。