類似錯(cuò)誤No named parameter with the name ‘XXXXXX‘問題
成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供西峰網(wǎng)站建設(shè)、西峰做網(wǎng)站、西峰網(wǎng)站設(shè)計(jì)、西峰網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、西峰企業(yè)網(wǎng)站模板建站服務(wù),十年西峰做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
原因:Flutter版本問題
一、回退到指定版本
1、GitHub搜索flutter 點(diǎn)擊進(jìn)入后,選擇tags找到需要的版本點(diǎn)進(jìn)去,如圖:
2、復(fù)制版本號(hào)
cd ?/Users/apple/Documents/flutter ? ?根目錄,同bash_profile中PATH配置保持一致即可。
git reset --hard 3595343e20a61ff16d14e8ecc25f364276bb1b8b
執(zhí)行完成,檢測 flutter --version
執(zhí)行 flutter doctor
????????了
當(dāng)一個(gè)純Flutter APP開發(fā)完成,我們要打包發(fā)布到App Store和各大安卓市場,這時(shí)候我們需要設(shè)置APP的版本號(hào)。
如果我們在使用原生iOS或者Android開發(fā)的時(shí),我們會(huì)在info.plist中設(shè)置 version 和 build 或是在build.gradle中設(shè)置 versionName 和 versionCode ,他們分別表示APP的版本和構(gòu)建版本。
但是我們在使用Flutter管理APP版本時(shí),打開 pubspec.yaml 只看到一個(gè) version 字段。這時(shí)候我們應(yīng)該怎么設(shè)置APP的 version 和 build 呢?
我們在pub上隨便找一個(gè)Flutter的組件,例如官方的 camera ,我們可以看到截止目前為止最新的版本為: camera: ^0.5.2+1 ??吹竭@里,我想大家都明白了,Dart采用的是加號(hào)式的版本描述方式, + 前面是版本號(hào), + 后面是當(dāng)前版本的build號(hào)。所以我們設(shè)置APP的版本號(hào)和build次數(shù),在這里設(shè)置即可,例如: version: 1.2.0+1 。
當(dāng)我們新建一個(gè)Flutter工程的時(shí)候,我們分別使用Xcode和Android Studio打開iOS和Android的工程可以看到,iOS中的 version 和 build 的值分別為 FLUTTER_BUILD_NAME 和 FLUTTER_BUILD_NUMBER :
同樣我們打開Android工程可以看到有如下定義:
事實(shí)上,F(xiàn)lutter在編譯的時(shí)候會(huì)生成 ios/Flutter/Generated.xcconfig 和 android/local.properties 文件。這兩個(gè)文件由Flutter編譯自動(dòng)生成,不可更改。記錄了包含SDK路徑或者文件路徑,版本信息,環(huán)境配置(release/debug)等信息。原生工程獲取版本信息的變量就定義在這兩個(gè)文件里面。
當(dāng)你添加完所有環(huán)境變量,或者多次卸掉重裝android studio后,再次插入手機(jī),或者是開啟模擬器的時(shí)候,vscode或android studio都顯示no devices的時(shí)候,以下簡單的解決方法或許能幫到你。
先檢查自己以往是否有安裝adb。在cmd中查看adb的版本。輸入:adb version。如果有安裝的話,建議在C:WindowsSystem和C:WindowsSystem32刪除adb.exe, AdbWinApi.dll和AdbWinUsbApi.dll三個(gè)文件即可。
你在android studio經(jīng)過了一頓操作,例如安裝了一系列的sdk文件,還有創(chuàng)建了模擬器之后,也執(zhí)行了第二步,環(huán)境變量也設(shè)置好了,在cmd中輸入adb version,會(huì)出現(xiàn)下圖:
這就代表了你已經(jīng)徹底清除了舊版本的adb,用的是目前最新版本的adb。這個(gè)也會(huì)隨著flutter?upgrade的更新而更新。我今天更新了flutter版本,adb應(yīng)該是最新的。
在管理員模式下打開cmd,輸入adb devices,會(huì)看見當(dāng)前已經(jīng)打開了的安卓設(shè)備。輸入adb connect 你安卓設(shè)備的名字 。failed那一行不用管,這時(shí)候看回vscode或者是android studio,即會(huì)出現(xiàn)設(shè)備,可進(jìn)行flutter的正常調(diào)試。
PS:
1、模擬器也是如此操作。先打開模擬器,再adb devices,adb connect 即可。
2、adb成功連接一次之后,下次就不用再開adb進(jìn)行連接了,直接插入手機(jī),或者是開啟模擬器即可。vscode是ctrl+shift+p,然后選擇Launch Emulator,打開模擬器,即可自動(dòng)連接模擬器。
3、flutter版本:Flutter:0.10.1-pre.96。adb版本:1.0.40。vscode版本:1.28.2。android studio版本:3.2.1。安卓模擬器版本:android 7.1.1。