Flutter入門與實戰(五十一):Flutter多版本切換開發

島上碼農發表於2021-08-14

這是我參與8月更文挑戰的第14天,活動詳情檢視:8月更文挑戰

今日七夕,祝單身的朋友們快樂!為啥不祝有物件的呢?因為他們今天肯定很快樂!

前言

寫了好幾篇狀態管理了,估計掘友都看累了,中場休息一下。正好評論說在 Dart 2.13.4版本中有問題,決定升級到最新版來跑一下看看。當前Flutter最新穩定版為2.2.3。作為開發尤其是產品開發,升級前肯定都慌得一批,最保險的方式就是可以隨時切換回去舊版本——萬一崩了還能回退。本篇介紹如何穩妥地在不同的 Flutter 版本切換。

image.png

下載最新版 Flutter

請勿直接使用命令列flutter update升級,一個是慢,一個是回退麻煩。直接上官網的安裝指引下載最新版本: Flutter安裝指引,注意下載壓縮包就可以了。下載完解壓,為了和舊版本區分,我的電腦資料夾命名為了 flutter_v22,完整路徑為:/Volumes/ServerDevelop/flutter_v22

修改舊的環境變數

本人使用的是 Macbook,命令列工具使用的是 zsh,需要修改環境變數,使用命令:

vim ~/.zshrc
複製程式碼

將 Flutter 的 bin 目錄新增到 $PATH 中:

export PATH=/Volumes/ServerDevelop/flutter_v22/bin:${PATH}
複製程式碼

然後執行 source 命令讓環境變數配置生效。

source ~/.zshrc
複製程式碼

然後執行一下命令 flutter --version 看看配置生效了沒,生效後顯示資訊如下:

Flutter 2.2.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision f4abaa0735 (6 weeks ago) • 2021-07-01 12:46:11 -0700
Engine • revision 241c87ad80
Tools • Dart 2.13.4
複製程式碼

說明版本已經生效。

修改VSCode工程配置

我們複製一份之前的 狀態管理程式碼目錄 state_management下來,命名為 state_management_v2。然後再用 VSCode 開啟,這時候我們開啟一個 dart 檔案,會發現顯示的 Flutter 版本還是2.0.6。 image.png 這個時候我們需要修改配置檔案settings.json,將dart.flutterSdkPath修改為新的版本的路徑:

{
    "dart.flutterSdkPath": "/Volumes/ServerDevelop/flutter_v22"
}
複製程式碼

這個時候再開啟 dart 檔案就會發現 SDK 版本已經切換為 Flutter 2.2.3版本了。 image.png 如果要想切換為舊版本,只需要按上面的步驟將舊版本的目錄資訊替換上去就好了。現在執行一遍程式碼,看看升級到最新的版本後會不會報錯。結果iOS模擬器連不上,提示:Failed to launch iOS Simulator: Error: Emulator didn't connect within 60 seconds,執行flutter doctor檢查一下:

[!] Xcode - develop for iOS and macOS
  ✗ Xcode 11.4.1 out of date (12.0.1 is recommended).
    Download the latest version or update via the Mac App Store.
複製程式碼

呃,需要升級 Xcode 版本,這個就是蘋果比較吐槽的地方了,升級新版的 Xcode 需要同時升級系統……這個是一個漫長的過程,先跑一下安卓模擬器看看吧,回頭再升級。安卓模擬器執行正常,不過安卓模擬器有點坑,網路訪問不支援 localhost127.0.0.1,修改介面地址為本機 IP 即可,有點麻煩,還是升級系統和 Xcode 吧。

不是總結

多版本切換的方式你 Get 到了嗎?今天不總結了,就到這吧,我得升級系統和Xcode去了 —— 得為新系統清理好多磁碟空間出來才行!

image.png


我是島上碼農,微信公眾號同名,這是Flutter 入門與實戰的專欄文章。

??:覺得有收穫請點個贊鼓勵一下!

?:收藏文章,方便回看哦!

?:評論交流,互相進步!

相關文章