1.創(chuàng)建flutter工程
Flutter Application(全新的APP)
flutter create flutter_app
#指定語言:默認(rèn)Android使用Java,iOS使用Objective-C
flutter create -i swift -a kotlin flutter_app
Flutter Module(混編到已有的Android/iOS工程)
flutter create -t module flutter_module
Flutter Package 只能用于 Dart 語言
flutter create --template=package flutter_package
Flutter Plugin 針對原生和Dart
- 默認(rèn)創(chuàng)建方式
flutter create --org com.example --template=plugin flutter_demo
- Objective-C 項目
flutter create --org com.example --template=plugin -i objc -a java flutter_demo
- Swift 項目
flutter create --org com.example --template=plugin -i swift -a kotlin flutter_demo
2.安裝依賴
Get package
flutter packages get
#如果不行可以設(shè)置國內(nèi)鏡像
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
Update package
flutter packages upgrade
3.項目運(yùn)行
#列出所有連接的設(shè)備
flutter devices
#運(yùn)行項目并顯示支持設(shè)備
flutter run
#執(zhí)行設(shè)備運(yùn)行
flutter run -d 'iPhone X?'
#運(yùn)行在所有可用設(shè)備上
flutter run -d all
#查看可用模擬器
flutter emulators
#啟動iOS模擬器
flutter emulators --launch apple_ios_simulator
#啟動Android 模擬器-只有啟動模擬器才可以運(yùn)行
flutter emulators --launch Nexus_5X_API_27
flutter run -d emulator-5554
#運(yùn)行IOS真機(jī)
flutter run -d 00008020-001838491169002E
調(diào)試
熱更新直接刷新
$ r
熱更新重啟刷新
$ R
退出運(yùn)行模擬器
$ q
查看日志
flutter logs
截圖
flutter screenshot
升級你的Flutter
flutter upgrade
或者
git stash
flutter upgrade --force
真機(jī)運(yùn)行
flutter run -d 73335b72c9ffd2154fafda7bb94e7c1c497336c3
安裝
flutter install
打包
Android apk 打包
flutter build apk
apk生成目錄
iOS ipa 打包
flutter build ios --debug
flutter build ios --release
編譯目錄:
項目工程目錄/build/ios/iphoneos/Runner.app
Shell 腳本打包遺留目錄(dst)
cd /private/tmp/Runner.dst
4項目調(diào)試
運(yùn)行項目
control+ R
熱重啟(hot restart)
command+ option + \
熱重載(hot reload)
command + \
5 代碼操作
快速導(dǎo)入頭文件
option + enter
給Model所有下劃線屬性生成get和set方法,光標(biāo)插入到類名
control + enter
Surround with快速調(diào)出if,for,try…catch,while等環(huán)繞代碼
選中需要嵌套的代碼,使用這個組合快捷鍵可以包裹需要的代碼塊,如圖
command+ option + T
快速生成模版代碼塊
command+ J
注釋與取消注釋,效果/**/
command+ option + /
刪除行
command+ delete
選擇區(qū)域
option + 雙擊 up
上下移動代碼
option + shift + up/down
選中代碼縮進(jìn)
選中代碼 + tab
選中代碼 + shift + tab
復(fù)制單行
command + D
隱藏左側(cè)目錄結(jié)構(gòu)窗口
shift + esc
快速創(chuàng)建一個StatefulWidget
stful
快速創(chuàng)建一個StatelessWidget
stless
添加或者移除widget
option + enter
抽取代碼為單獨的Widget
有時候代碼嵌套太多,不方便閱讀,抽取Widget為一個單獨的類,提高代碼的閱讀性
// 鼠標(biāo)選中需要轉(zhuǎn)換的類名,或光標(biāo)放到類名之間
command + option + W
將StatelessWidget轉(zhuǎn) StatefulWidget
鼠標(biāo)選中需要轉(zhuǎn)換的類名,或光標(biāo)放到類名之間
option + enter
自動導(dǎo)入用到的包
// 選中該方法 +
option + enter
行尾自動添加分號,if后面自動加“(){ }”
shift + command + enter
返回到上次編輯位置
cmd + [ / ]
opt + cmd + ← / →
抽取代碼為單獨的方法,或者抽取成get方法
command + option + M
查看抽象類的實現(xiàn)
command + option + B
6 格式化
頁面內(nèi),類代碼塊展開/收縮
// 展開
command + shift + 加號
// 收縮
command + shift + 減號
局部代碼塊展開/收縮
// 展開
cmd +
// 收縮
cmd -
格式化代碼
opt + cmd + L
自動縮進(jìn)對齊
ctr + alt + I
清除無效包引用
opt + ctr + o
升級你的Flutter
flutter upgrade
或者
git stash
flutter upgrade --force
Android apk 打包
flutter build apk
iOS ipa 打包
flutter build ios --debug
flutter build ios --release
7 搜索查找
當(dāng)前文件查找/替換
// 當(dāng)前文件查找
Command + F
// 當(dāng)前文件替換
Command + R
-
跳到下一個高亮的變量
Command + G -
跳到上一個高亮的變量
Shift + Command + G
全局查找/替換
-
全局搜查找
Shift +Command + F -
全局替換
Shift +Command + R
全局搜索類
Command + o
全局搜索類/方法/參數(shù)
opt + cmd + o
cmd + f12 //查看全部方法
打開最近訪問的文件列表
cmd + E