記一次Pod私有庫制作

背景:公司前端項(xiàng)目要集成Flutter技術(shù),經(jīng)過層層篩選,此處省略5000字,大家可以自行Google或者度娘 Flutter和ios混合方案官方方案,最終決定采用私有庫的形式引入到項(xiàng)目中,這樣做的有點(diǎn),對(duì)原生項(xiàng)目侵入最小,原生項(xiàng)目不需要配置Flutter環(huán)境,對(duì)于Flutter打包成私有庫的形式也更容易進(jìn)行Flutter版本控制。廢話不多,搞起!
  • 第一步創(chuàng)建私有庫 pod lib create FlutterSDK,會(huì)自動(dòng)生成FlutterSDK文件夾,這里需要注意 ruby2.*版本的時(shí)候你你需要這樣:
xingkunkun:FlutterForFW admin$ pod lib create FlutterSDK
Cloning `https://github.com/VixHi/vvtable.git` into `FlutterSDK`.
Configuring MyFlutterPod template.
------------------------------
To get you started we need to ask a few questions, this should only take a minute.

What platform do you want to use?? [ iOS / macOS ]
 > iOS
What language do you want to use?? [ Swift / ObjC ]
 > objc
Would you like to include a demo application with your library? [ Yes / No ]
 > no
Which testing frameworks will you use? [ Specta / Kiwi / None ]
 > none
Would you like to do view based testing? [ Yes / No ]
 > no
What is your class prefix?
 > DZJ
Running pod install on your new library.

ruby3.*版本會(huì)直接生成對(duì)應(yīng)的文件夾如下圖,注意NAME.podspec文件,可以更改名稱-->FlutterSDK.podspec

image
  • 第二步配置.podspec
Pod::Spec.new do |s|
 s.name  = "FlutterSDK" #名稱
 s.version = "0.2.17"   #版本
 s.platform  = :iOS
 s.ios.deployment_target = "9.0"
 s.summary = "Flutter SDK."
 s.license = { :type => "MIT", :file => "LICENSE" }
 s.homepage  = "http://172.29.28.7/vix/test-responsible"
 s.author  = { "vixhi" => "hi_vix@163.com" }
 s.source  = { :git => "https://github.com/Vix_Hi/vvtable.git", :tag => s.version.to_s }
 s.static_framework = true
 s.vendored_frameworks = "flutter_lib/*.framework" #flutter_lib文件和.podspec在同一目錄
 s.pod_target_xcconfig = { "VALID_ARCHS" => "x86_64 armv7 arm64" } #設(shè)置支持的架構(gòu)
end
  • 第三步,將Flutter打包的庫拷貝到flutter_lib目錄下
  • 第四步,制作命令行操作

1.添加本地pod庫

pod repo add FlutterSDK 遠(yuǎn)程庫地址例如:https://github.com/Vix_Hi/test.git

FlutterSDK這個(gè)就是你要?jiǎng)?chuàng)建的私有庫的名稱

2.將Flutter打包的庫提交到遠(yuǎn)端

添加遠(yuǎn)端倉庫 git remote add Flutter 遠(yuǎn)程庫地址例如:https://github.com/Vix_Hi/test.git

git add flutter_lib

git commit -m "FlutterSDK 制作"

git push Flutter

3.打tag

git tag -a "0.1.0" -m "my flutterSDK tag"

git push Flutter 0.1.0

4.庫驗(yàn)合法性

pod spec lint FlutterSDK.podspec --verbose

pod repo push FlutterSDK FlutterSDK.podspec

5.成功之后可以自己搜索一下看能不能搜索到

pod search FlutterSDK

如果搜索不到繼續(xù)往下看:

pod repo update FlutterSDK

搜索看看能否搜索到,如果還不能繼續(xù)往下看

pod repo remove FlutterSDK

pod repo add FlutterSDK 遠(yuǎn)程庫地址例如:https://github.com/Vix_Hi/test.git

rm ~/Library/Caches/CocoaPods/search_index.json

如果配置都沒有錯(cuò)誤的話,然后再嘗試搜索應(yīng)該就可以了。

制作過程中遇到的錯(cuò)誤可以參考這片文章podspec 校驗(yàn)報(bào)錯(cuò)問題指南

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容