一、混合開發中啟用 Flutter 的 熱重啟 / 熱加載
Flutter 開發時 , 默認自動開啟 熱重啟 / 熱更新 功能 , 改動代碼后 , 一旦 Ctrl + S 保存代碼 , 修改的內容馬上會熱更新到除錯的手機中 ;
如果在 Android Native 應用 和 Flutter 應用混合開發時 , Flutter 無法進行 熱重啟 / 熱更新 , 這樣降低了開發除錯的效率 ;
混合開發中啟用 Flutter 的 熱重啟 / 熱加載 :
① 打開模擬器 , 或連接真機 ;
② 關閉應用 : 注意 , 應用一定不能運行在手機中 , 先把手機中的應用關閉 ;
③ 關聯 Flutter 與 Android 應用 :
在 Flutter Module 工程的 Android Studio 的 Terminal 面板中 ,使用
flutter attach
命令 , 可以令 Android 應用 和 Flutter 應用進行關聯 , 之后在該混合開發中 , 就可以實作 Flutter 的 熱重啟 / 熱更新 ;
此時會輸出 " Waiting for a connection from Flutter on Pixel 2… " 提示 , 等待將 Android 和 Flutter 混合應用安裝到設備中 ;
注意 , 運行的是 混合應用 , 將 Android 專案運行 , 運行 Android Native 專案 ;
Y:\002_WorkSpace\001_AS\flutter_hybrid\flutter_module>flutter attach Waiting for a connection from Flutter on Pixel 2...
在 Android 的 Native 應用中 , 運行 , 注意不是運行 Flutter 應用 ;
Android 手機中已經運行該應用 ;
flutter_module 的 Terminal 中還是現實如下資訊 , 這是因為還沒有在 Android 應用中加載 Flutter 頁面 ;
在 Android 應用中 , 點擊 " 方式一 " 按鈕 , 加載 Flutter 應用 , Flutter 頁面以 FlutterFragment 形式嵌入到了 Android 頁面中 ;
flutter_module 的 Terminal 中列印如下資訊 , 說明混合開發中 Flutter 的 熱重啟 / 熱加載 啟用成功 ;
Flutter run key commands.
r Hot reload. ??????
R Hot restart.
h List all available interactive commands.
d Detach (terminate "flutter run" but leave application running).
c Clear the screen
q Quit (terminate the application on the device).
?? Running with sound null safety ??
An Observatory debugger and profiler on MI 8 UD is available at: http://127.0.0.1:57857/LMv2jSMWQBQ=/
The Flutter DevTools debugger and profiler on MI 8 UD is available at:
http://127.0.0.1:9100?uri=http://127.0.0.1:57857/LMv2jSMWQBQ=/
二、混合開發中 Flutter 的 熱重啟 / 熱加載 命令測驗
Flutter 運行按鍵命令 :
r // 熱加載
R // 熱重啟
h Repeat this help message. // 幫助資訊
d Detach (terminate “flutter run” but leave application running).// 取消熱修復
c Clear the screen // 清空螢屏
q Quit (terminate the application on the device). // 退出
修改 Flutter 代碼后 , 在 Android Studio 的 Terminal 中, 按下 r 鍵 , 即可進行熱更新 ;
Performing hot reload... Reloaded 1 of 553 libraries in 791ms.
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/545385.html
標籤:其他
