為您解碼網(wǎng)站建設(shè)的點(diǎn)點(diǎn)滴滴
發(fā)表日期:2018-12 文章編輯:小燈 瀏覽次數(shù):4474
在 Flutter 里有幾種調(diào)試方式。
在 Flutter 進(jìn)行斷點(diǎn)調(diào)試非常簡(jiǎn)單,只需要在 Vscode 上打上一個(gè)斷點(diǎn),按 F5 就會(huì)停在斷點(diǎn)處。通過左邊的調(diào)試欄,觀察斷點(diǎn)處的變量以及棧堆情況。
除了打斷點(diǎn),也可以使用 debugger API 的方式。
import 'dart:developer';void someFunction(double offset) { debugger(when: offset > 30.0, message: 'offset 大于 30 時(shí),中斷'); // ... }
這段代碼表明,當(dāng) offset 這個(gè)變量的值大于 30.0 時(shí)中斷運(yùn)行,并輸出 message 的內(nèi)容。debugger 代碼只會(huì)在開發(fā)階段運(yùn)行。
rendering 即開啟布局線,當(dāng)打開 rendering 時(shí),會(huì)在界面上看到一些布局線,以便于修復(fù)布局效果。
import 'package:flutter/rendering.dart';void main() { debugPaintSizeEnabled = !true; runApp(new MyApp()); }
打開之后看到的效果。
日志調(diào)試,直接使用 print 輸出內(nèi)容即可,在 AS、Vscode 里的控制臺(tái)/調(diào)試控制臺(tái)都可以看到。
為了方便,定義一個(gè) Debug 類。
class Debug { static log(String tag, String text) { print('[$tag] $text'); } static info(String tag, String text) { print('[$tag] $text'); } static success(String tag, String text) { print('[$tag] $text'); } static error(String tag, String text) { print('[$tag] $text'); } }
在使用命令:flutter run
時(shí),會(huì)有一個(gè) Observatory URL 地址提供(一般為:http://127.0.0.1:8108/),那就是運(yùn)行狀態(tài)調(diào)試,打開之后可以看到應(yīng)用的 GC、VM 方面的信息。注意,如果使用 F5 啟動(dòng),則沒有這個(gè)功能。
開啟真機(jī)調(diào)試的步驟:
然后可通過執(zhí)行 flutter run 運(yùn)行我們的 app。
在手機(jī)上開啟 USB 調(diào)試模式。