當前位置:編程學習大全網 - 源碼下載 - flutter引入第三方插件報錯xxx-Swift.h file not found解決辦法及原因

flutter引入第三方插件報錯xxx-Swift.h file not found解決辦法及原因

問題算是解決了,但是為什麽會這樣呢,我們習以為常的use_frameworks!有什麽作用呢,知其然也要知其所以然,帶著疑問我進行了下壹步的探索 。

首先我們要了解下靜態庫和動態庫還有Framework。

靜態庫:(.a)在編譯時會將庫copy壹份到目標程序中,編譯完成之後,目標程序不依賴外部的庫,也可以運行。缺點: 會使應用程序變大。

動態庫:(.dylib)編譯時只存儲了指向動態庫的引用。可以多個程序指向這個庫,在運行時才加載,不會使應用體積變大,但是運行時加載會損耗部分性能,並且依賴外部的環境,如果庫不存在或者版本不正確則無法運行(我的項目無法運行就是這壹步出問題了)。

Framework:實際上是壹種打包方式,將庫的二進制文件,頭文件和有關的資源文件打包到壹起,方便管理和分發。

CocoaPods 通過use_frameworks來控制是否是用Framework。

如果不使用use_frameworks!則會使用static libraries 方式生成.a文件。

如果使用use_frameworks!則會使用dynamic frameworks 方式生成.framework文件。

在純oc的項目中,壹般不使用frameworks,但是在pod導入的swift項目,必須要使用use_frameworks!,我這個flutter項目也是用pod導入的第三方庫,所以必須加入use_frameworks!,特此記錄下,免得以後踩同樣的坑!

  • 上一篇:安卓手機怎麽看電池健康程度安卓手機怎麽看
  • 下一篇:MySQL中date,year,datetime,timestamp和time數據類型的區別
  • copyright 2024編程學習大全網