最近在集成flutter進(jìn)項(xiàng)目
創(chuàng)新互聯(lián)主營(yíng)襄陽(yáng)網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開發(fā),襄陽(yáng)h5小程序制作搭建,襄陽(yáng)網(wǎng)站營(yíng)銷推廣歡迎襄陽(yáng)等地區(qū)企業(yè)咨詢
以收集編譯產(chǎn)物并以cocopods方式集成
產(chǎn)物大概放入兩個(gè)pod庫(kù)
這個(gè)暫且叫pod1,pod1放flutter.framework,第三方plugin.a,自己寫的基礎(chǔ)plugin,比如networking,hud等等(由于是混編,不可避免存在很多原生基礎(chǔ)組件,所以能公用的基礎(chǔ)組件都會(huì)弄一個(gè)flutter-plugin橋接)
第二個(gè)pod2放編譯之后的app.framwork,注冊(cè)文件GeneratedPluginRegistrant,以及各個(gè)業(yè)務(wù)模塊.a(有可能沒有)結(jié)構(gòu)大概如下面
podspec大概如下
主工程引入這兩個(gè)pod庫(kù)即可
接下來(lái)從零開始搭建上文所說(shuō)的
先創(chuàng)建一個(gè)flutter module
這個(gè)是主flutter工程,用來(lái)集成businessModule以及生成app.framework
結(jié)構(gòu)如下圖
再生成一個(gè)業(yè)務(wù)工程
注意此時(shí)還需要進(jìn)入example生成ios和Android工程,不然無(wú)法單獨(dú)編譯運(yùn)行
這樣 這個(gè)單獨(dú)的業(yè)務(wù)模塊就可以單獨(dú)跑起來(lái)了
此時(shí)主flutter工程和業(yè)務(wù)工程均搭建完畢
在主工程pubspec.ymal文件講兩個(gè)工程關(guān)聯(lián)
好了 接下來(lái)就是編寫腳本收集產(chǎn)物了
編譯完成之后會(huì)在flutter主工程product生成如下文件
將上面文件分類收集做成文章開頭的pod1,pod2 ,在native工程引入即可
在集成flutter的過(guò)程中 踩不少坑 也閱讀很多前輩的文章,在此一并感謝
1.打開 VS Code。
2.打開 查看 命令面板…。
3.輸入 “install”,然后選擇 擴(kuò)展: 安裝擴(kuò)展(就是點(diǎn)擊選擇第一行內(nèi)容)。
4.在擴(kuò)展搜索輸入框中輸入 “flutter”,然后在列表中選擇 Flutter 并單擊 安裝。此過(guò)程中會(huì)自動(dòng)安裝必需的 Dart 插件。(選擇第一行并安裝)
5.退出然后重新啟動(dòng) VS Code。
1.打開 查看 命令面板…。
2.輸入 “doctor”,選擇 Flutter: Run Flutter Doctor。
3.打開 輸出 (OUTPUT) 面板查看是否有錯(cuò)誤,確保在不同的輸出選項(xiàng) (Output Options) 的下拉列表中選擇了 Flutter。
我們?cè)谏掀恼乱呀?jīng)用命令行創(chuàng)建了一個(gè) my_app 的flutter項(xiàng)目了,這里我們就可以使用 vscode 打開看看了
創(chuàng)建新項(xiàng)目 ,則是在命令面板輸 flutter , 選擇 Flutter: New Application Project
運(yùn)行項(xiàng)目 ,找到 VS Code 的狀態(tài)欄(窗口底部藍(lán)色的條)
1.打開 Android Studio。
2.打開插件設(shè)置(在 v3.6.3.0 以上的系統(tǒng)打開 Configure Plugins)。
這里需要先改一下網(wǎng)絡(luò)請(qǐng)求的設(shè)置
3.然后搜索Flutter 插件,選擇并點(diǎn)擊 安裝。
4.當(dāng)彈出安裝 Dart 插件提示時(shí),點(diǎn)擊 Yes。
5.退出重新啟動(dòng)編譯器,然后在編譯器主頁(yè)面就可以看到多了了 create new flutter project 可供選擇,代表flutter插件安裝成功,我們?cè)囍c(diǎn)擊來(lái)創(chuàng)建一個(gè)新項(xiàng)目。
在進(jìn)行Flutter開發(fā)過(guò)程中,很容易出現(xiàn)iOS原生端編譯不成功的問(wèn)題,比如出現(xiàn)Undefined symbol:__swift_FORCE_LOAD_$_swfitCoreLocation
出現(xiàn)這種情況的時(shí)候,為沒有導(dǎo)入swift頭文件導(dǎo)致編譯不成功,解決辦法為:
1、新建選中Runner右鍵New File ?選擇Swift File
2、點(diǎn)擊create的時(shí)候會(huì)出現(xiàn)選擇Xcode ?- Create Bridging Header?
3、隨后會(huì)創(chuàng)建一個(gè)Runner-Bridging-Heading.h的文件
4、正常運(yùn)行項(xiàng)目即可
一般此情況多出現(xiàn)在第一次運(yùn)行iOS的情況,為導(dǎo)入過(guò)支持Swift后XCode沒有進(jìn)行兼容導(dǎo)致的問(wèn)題。
分享題目:flutter編譯過(guò)程,flutter 交叉編譯
文章轉(zhuǎn)載:http://chinadenli.net/article44/dsigohe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷、網(wǎng)站設(shè)計(jì)、外貿(mào)建站、網(wǎng)站設(shè)計(jì)公司、虛擬主機(jī)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)