如圖所示,F(xiàn)lutterPlugin中Android模塊引用 flutter.jar 內(nèi)容報(bào)紅:
安陽(yáng)網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司2013年至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
這是由于 flutter.jar 沒(méi)有被引入造成的,處理方式分為以下三個(gè)步驟:
截圖示例:
點(diǎn)擊Sync按鈕重新編譯即可
new flutter project,選擇Flutter Plugin,next,輸入插件名,包名,運(yùn)行平臺(tái)及編寫語(yǔ)言,finish!
如上圖,筆者的插件名為log_plugin,選用Android,java語(yǔ)言開發(fā)
在自動(dòng)打開和插件名同名的dart文件,聲明要使用其他語(yǔ)言的方法,本例使用java 語(yǔ)言實(shí)現(xiàn)Android原生的log輸出
編輯 android/src/main/java/com/whh/log_plugin/LogPlugin.java
在onMethodCall方法中,區(qū)別聲明方法名,以實(shí)現(xiàn)該方法邏輯
至此,簡(jiǎn)單的插件開發(fā)完成,接下來(lái)測(cè)試
example是插件測(cè)試工程,打開其中的main.dart
打開已有的或者新建一個(gè)flutter app project,在其pubspec.yaml引入插件
使用pub get 關(guān)聯(lián)到插件
詳見(jiàn)官網(wǎng)文檔
此文為 flutter 初學(xué)者記錄學(xué)習(xí)過(guò)程,附上 github ,小小分享~
每天進(jìn)步一點(diǎn)點(diǎn)。。。(2021-08-10)
? ? 盡可能收集好用的插件以便更快的開發(fā)效率,85%親測(cè),持續(xù)添加中
如果有好的插件或者建議,可以直接評(píng)論 ??
Github地址:
文章源地址:
br /
???????? 盡可能收集好用的插件以便更效率的開發(fā),85%親測(cè),持續(xù)添加中
br /
br /
如果有好的插件或者建議,可直接提Issue 感謝您的分享 ~ ??
br /
br /
掘金文章地址:
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
br /
Flutter插件是Flutter調(diào)用原生能力的一種解構(gòu)方式。
Flutter 會(huì)通過(guò) MethodChannel 將數(shù)據(jù)傳遞給 iOS/ Android ,反之 iOS/ Android 也可以通過(guò) MethodChannel 將數(shù)據(jù)傳回給 Flutter。
在Flutter工程根目錄創(chuàng)建plugins目錄,在plugins目錄下執(zhí)行下面命令:
Flutter-Native
Native-Flutter
前提:Flutter 項(xiàng)目中引入使用多個(gè)插件,內(nèi)含有swift與靜態(tài)庫(kù)時(shí)出現(xiàn)的一系列問(wèn)題
問(wèn)題一、swift插件缺少設(shè)置swift的版本號(hào)
解決方案:在Xcode中打開項(xiàng)目Targets—builds settings —user-defined
在user-defined內(nèi)添加一行:SWIFT_VERSION(版本號(hào)視當(dāng)前版本號(hào)為準(zhǔn))
問(wèn)題二、靜態(tài)庫(kù)
看到網(wǎng)上好多的解決方法是刪除掉或者添加上Podfile中的use_frameworks!,實(shí)測(cè)與此無(wú)關(guān),錯(cuò)誤信息忘記截圖啦????,大體就是pod install 時(shí)出現(xiàn)無(wú)法install之類的信息
正解方法是找到相關(guān)錯(cuò)誤插件內(nèi)的podspec文件,添加s.static_framework = true
1,執(zhí)行 flutter pub publish--dry-run 檢查是否具備發(fā)布條件
遇到的問(wèn)題1:
It‘s strongly recommended to include a “homepage“ or “repository“ field
解決方案:在 pubspec. yaml ?中配置 主頁(yè) homepage 地址 :
homepage:
可參考:
2,執(zhí)行 flutter pub publish--server= 發(fā)布
如果執(zhí)行flutter pub publish發(fā)布的話會(huì)遇到以下錯(cuò)誤,國(guó)內(nèi)還是用?flutter pub publish--server= 來(lái)發(fā)布
package repository requested authentication! You can provide credential using:pub token add
問(wèn)題1:It looks like accounts.google.com is having some trouble. Pub will wait for a while before trying to connect again. OS Error: Operation timed out, errno = 60, address = accounts.google.com, port = 53481 pub finished with exit code 69
原因:
1、國(guó)內(nèi)墻;
2、flutter環(huán)境配置添加了國(guó)內(nèi)鏡像
解決方式:
1、翻墻;
2、屏蔽環(huán)境變量里關(guān)于flutter的國(guó)內(nèi)鏡像;
屏蔽方式如下:
# export PUB_HOSTED_URL=
# export FLUTTER_STORAGE_BASE_URL=
3、設(shè)置終端代理命令(這個(gè)是我解決的方式),這個(gè)非常重要,不然就會(huì)報(bào)上面超時(shí)錯(cuò)誤了
如果出現(xiàn):Flutter pub finished with exit code 1
解決方式:flutter packages pub publish --server=
此問(wèn)題原文鏈接:(畢竟要尊重版權(quán))
問(wèn)題2:LICENSE這個(gè)文件中不能有TODO,也不能為空,可找個(gè)flutter庫(kù)看看別人是怎么寫的