跳到主內容

Dart DevTools

Dart DevTools 是一套用於 Dart 和 Flutter 的除錯和效能工具。這些工具作為 dart 工具的一部分分發,並與 IDE、dart runwebdev 等工具互動。

Screenshot of DevTools' Memory page

下表顯示了您可以與常見 Dart 應用型別一起使用的工具。

工具Flutter 移動端或桌面端Flutter Web其他 Web命令列
偵錯程式支援支援支援支援
日誌檢視支援支援支援支援
應用大小工具支援支援
CPU 分析器支援支援
記憶體檢視支援支援
網路檢視支援支援
效能檢視支援支援
Flutter 檢查器支援支援

要了解如何將 Dart DevTools 與每種應用型別(例如,命令列應用)結合使用,請點選頂行的應用型別。要了解有關單個工具(例如,偵錯程式)的詳細資訊,請點選左列中的工具名稱。

如表所示,偵錯程式和日誌檢視是 Dart DevTools 中唯一適用於所有應用型別的部分。Web 應用無法使用時間線、記憶體和效能檢視;相反,它們可以使用瀏覽器工具,例如 Chrome DevTools。Flutter 檢查器僅適用於 Flutter 應用;其他 Web 應用應使用瀏覽器工具,例如 Chrome DevTools。

將 DevTools 與命令列應用結合使用

#

您可以使用 DevTools 執行原始碼級除錯,或檢視執行中的命令列應用的通用日誌和診斷資訊。

1. 啟動目標應用

#

使用 dart run --observe 命令來執行您想要除錯或觀察的 Dart 命令列應用的主檔案。您可以選擇新增 --pause-isolates-on-start,這會在指令碼啟動時自動中斷執行。

cd path/to/dart/app
dart run --pause-isolates-on-start --observe main.dart

The Dart VM service is listening on http://127.0.0.1:8181/afZySiNbDPg=/
The Dart DevTools debugger and profiler is available at: http://127.0.0.1:8181/afZySiNbDPg=/devtools/#/?uri=ws%3A%2F%2F127.0.0.1%3A8181%2FafZySiNbDPg%3D%2Fws

請記下 Dart DevTools 偵錯程式和分析器的 URL。下一步會用到它。

2. 開啟 DevTools 並連線到目標應用

#

複製 Dart DevTools 偵錯程式和分析器的 URL,並將其貼上到 Chrome 瀏覽器視窗的位址列中。

當您在 Chrome 中訪問該 URL 時,Dart DevTools UI 會出現,顯示有關目標應用的資訊。點選 Debugger 以開始除錯應用。

將 DevTools 與 Flutter 應用結合使用

#

有關在任何平臺(包括 Web)上將 DevTools 與 Flutter 應用結合使用的詳細資訊,請參閱 flutter.dev 上的 DevTools 文件。

將 DevTools 與非 Flutter Web 應用結合使用

#

要啟動 Web 應用以便使用 Dart DevTools,請使用 webdev serve 命令並帶上 --debug--debug-extension 標誌

webdev serve --debug

有關更多資訊,請參閱 除錯 Dart Web 應用