今日要點
》常用的 Flutter 指令
指令:flutter doctor / flutter doctor -v
指令:flutter create app的名字
指令:flutter pub get / flutter packages get
指令:flutter run -d all
指令:Hot reload
指令:flutter run --release
指令:flutter devices /flutter emulators
指令:flutter channel stable
接下來會開始介紹一些有趣的專案,所以今天先把常用的 Flutter 指令先熟悉一下,之後就會常常看到這些指令出現,我也趁這個機會,順便再把這些指令了解一下。
這二個前一篇有提到,就不多贅述了。
這個會建立一個 Flutter 的專案,老實我比較少用這指令,我很懶的都用 Android Studio 來建立,不過高手都是用命令列的,我還是再複習一下。
% flutter create jasonCreateFlutterFromCmd
會印出專案建立的過程,一共會建立 71個檔案,簡單記錄一下幾個特別的檔案,
Creating project jasonCreateFlutterFromCmd...
# 建立 ios 用的檔案
jasonCreateFlutterFromCmd/ios/Runner.xcworkspace/contents.xcworkspacedata
(created)
...
jasonCreateFlutterFromCmd/ios/Runner/Info.plist (created)
jasonCreateFlutterFromCmd/test/widget_test.dart (created)
...
# 建立 git 用的檔案
jasonCreateFlutterFromCmd/.gitignore (created)
# 建立 anroid 用的檔妹
jasonCreateFlutterFromCmd/android/app/src/profile/AndroidManifest.xml
(created)
...
# 建立 Flutter 用的檔案
jasonCreateFlutterFromCmd/pubspec.yaml (created)
jasonCreateFlutterFromCmd/lib/main.dart (created)
...
Running "flutter pub get" in jasonCreateFlutterFromCmd... 1.1s
Wrote 71 files.
All done!

開檔案總管來看看,看起來很多檔案,不過平常如果只是練習,可能都只跟 lib 目錄打交道而已
通常你從 github 下載一個專案下來,第一個指令就是這個。主要是把 pubspec.yaml 裡提到有使用到的套件把他下載回來,至於要用那一個,似乎是沒有影響,我自己是都用 flutter pub get. 為什麼?因為字比較少丫,而且剛上一個指令,裡面就叫你執行 flutter pub get ![]()
這個我很常用,就是把所所活著的裝置跟模擬器,全都都把 App 執行起來。把剛剛前一個指令建好的專案,改一下裡面的文字,跑一下 flutter run -d all
執行前
執行後
有沒有很壯觀!
字好小,截大張一點

前一個指令,你執行完 flutter run -d all 後,就會停留在這個畫面,
這個是 Flutter 的特色之一,run 完之後,你改程式碼,
只要按一下 r 就可以在裝置看到改完的效果了。超方便的。
這個也很常用,就是用最佳效能來跑 app, 因為是 release 所以不會有 Debug 的東東在裡面,如果在這個模式你的 App 還跑的慢慢的,那... 就好好改一下程式吧。
就是列出,目前有什麼裝置可以使用,偶而用到,嗯,不算常用。
遇到怪怪的問題,先用這個指令處理一下,先記錄一下
Incompatible protocol version: client=3.26 vm=4.0
Failed to connect to the VM observatory service at: ws://127.0.0.1:59555/wENc2Z63E2A=/ws
java.io.IOException: Incompatible protocol version: client=3.26 vm=4.0
以上,就先列這幾個,有時間再寫細一點。
好,第三天打完。
參考:
What is the difference between flutter packages get and flutter pub get?