Devtools - Performance tools for Flutter

Related tags

Templates devtools
Overview

Dart & Flutter DevTools

Build Status

What is this?

Dart & Flutter DevTools is a suite of performance tools for Dart and Flutter.

Getting started

For documentation on installing and trying out DevTools, please see our docs.

Contributing and development

Contributions welcome! See our contributing page for an overview of how to build and contribute to the project.

Terms and Privacy

By using Dart DevTools, you agree to the Google Terms of Service. To understand how we use data collected from this service, see the Google Privacy Policy.

Comments
  • Dart Devtools not working after update.

    Dart Devtools not working after update.

    This morning when I run Devtools I got an updating message and after update DevTools opened but shows nothing. this is my Devtools URL = http://127.0.0.1:9100/#?hide=debugger&ide=VSCode&theme=dark&uri=http%3A%2F%2F127.0.0.1%3A49683%2F7P9jVJjp0SU%3D%2F&page=inspector

    My Flutter version is 1.19.0-4.1.pre My Dart version is 2.9.0 (build 2.9.0-14.1.beta).

    bug 
    opened by azad47808 64
  • Switch to using Path URL Strategy

    Switch to using Path URL Strategy

    This changes the app to use the PageUrlStrategy in Flutter, which means URLs will just be standard like /foo instead of being added to the fragment like /#/foo.

    @kenzieschmoll this seems to work well from my testing, including from VS Code (with a small tweak I'll ship in the next week or so), although I'm not certain there aren't pages with unusual navigation I may have missed.

    Some things I'm not certain but should be checked before merging though"

    • [x] It doesn't affect IntelliJ/Android Studio negatively (VS Code requires a change because it's over-encoding or URLs was causing issues here)
    • [ ] It doesn't affect anyone not using defaultHandler in the server... I've had to extend defaultHandler to be able to serve up index.html when a request comes in for something like /memory, because although navigations are usually done client-side, it's possible that the user hits Refresh or we try to launch directly on to a page which will now send /page_id to the server instead of just / which won't otherwise get the contents of index.html to launch the Flutter app.
    • [x] Survey parsing may need updating

    I'm not sure who best knows the answer to these questions though.

    Fixes #2475.

    opened by DanTup 55
  • I can build the app, but I get the following error: Invalid argument(s): A directory corresponding to fileSystemPath

    I can build the app, but I get the following error: Invalid argument(s): A directory corresponding to fileSystemPath "/Users/develien/.pub-cache/hosted/pub.dartlang.org/devtools-2.9.2/build" could not be found

    Invalid argument(s): A directory corresponding to fileSystemPath "/Users/develien/.pub-cache/hosted/pub.dartlang.org/devtools-2.9.2/build" could not be found

    There seems to be a problem with the 2.9.2 commit as there were no problems until yesterday.

    opened by kyudongDev 41
  • Unable to inspect response bodies on Network page

    Unable to inspect response bodies on Network page

    As described at the Flutter 1.22 announcement - Updated Network Page in DevTools, we should be able to inspect network calls after getting the newest flutter version using flutter upgrade, but I'm not able to locate/use the feature.

    I'm currently running devtools 0.9.2, so I tried to force the update to the latest release by running pub global activate devtools 0.9.3 but it fails trying to resolve dependencies:

    Because devtools >=0.9.3 depends on devtools_shared 0.9.3 which doesn't match any versions, devtools >=0.9.3 is forbidden.
    So, because pub global activate depends on devtools 0.9.3, version solving failed.
    pub finished with exit code 1
    

    You can check the same error on pub.dev here https://pub.dev/documentation/devtools/0.9.3/log.txt

    So what I tried instead was to clone this repo and build from v0.9.3 tag and master branch. In both cases the build passes fine, but again the feature doesn't seem to be there. Every request on the Network page never completes, so no Response tab appears and Header sections are empty.

    While running the app in debug mode one of the exceptions shown was this one:

    Error: Assertion failed: file:///.../devtools/packages/devtools_app/lib/src/http/http_request_data.dart:62:16
    requestEndEvent == null
    is not true
        at Object.throw_ [as throw] (http://localhost:63874/dart_sdk.js:4333:11)
        at Object.assertFailed (http://localhost:63874/dart_sdk.js:4276:15)
        at Function.fromTimeline (http://localhost:63874/packages/devtools_app/src/ui/gtags.dart.lib.js:68892:48)
        at network_controller.NetworkController.new.processNetworkTrafficHelper
        (http://localhost:63874/packages/devtools_app/src/ui/gtags.dart.lib.js:69224:61)
        at network_controller.NetworkController.new.processNetworkTraffic
        (http://localhost:63874/packages/devtools_app/src/ui/gtags.dart.lib.js:69254:36)
        at network_service.NetworkService.new.refreshNetworkData
        (http://localhost:63874/packages/devtools_app/src/ui/gtags.dart.lib.js:68569:32)
        at refreshNetworkData.next (<anonymous>)
        at http://localhost:63874/dart_sdk.js:37669:33
        at _RootZone.runUnary (http://localhost:63874/dart_sdk.js:37523:58)
        at _FutureListener.thenAwait.handleValue (http://localhost:63874/dart_sdk.js:32497:29)
        at handleValueCallback (http://localhost:63874/dart_sdk.js:33044:49)
        at Function._propagateToListeners (http://localhost:63874/dart_sdk.js:33082:17)
        at _Future.new.[_completeWithValue] (http://localhost:63874/dart_sdk.js:32925:23)
        at async._AsyncCallbackEntry.new.callback (http://localhost:63874/dart_sdk.js:32947:35)
        at Object._microtaskLoop (http://localhost:63874/dart_sdk.js:37784:13)
        at _startMicrotaskLoop (http://localhost:63874/dart_sdk.js:37790:13)
        at http://localhost:63874/dart_sdk.js:33299:9
    

    Relevant information from flutter doctor

    [✓] Flutter (Channel stable, 1.22.0, on Mac OS X 10.15.6 19G2021)
        • Flutter version 1.22.0
        • Framework revision d408d302e2 (2 days ago), 2020-09-29 11:49:17 -0700
        • Engine revision 5babba6c4d
        • Dart version 2.10.0
    

    Is this feature not ready yet, despite the announcement and PR #2374 / Issue #2335 being closed, or am I missing something?

    network page 
    opened by gustavogamino 40
  • Enable layout explorer in widget inspector on web platform

    Enable layout explorer in widget inspector on web platform

    We are publishing new version of dwds that now supports VMService.evaluate() for dart expressions. Widget inspector will work with this version when dwds is updated in flutter, so it would be great to enable it in devtools at the same time.

    See: https://github.com/dart-lang/webdev/pull/1285

    opened by annagrin 37
  • Flutter inspector bugging out/freezing in Visual Studio Code

    Flutter inspector bugging out/freezing in Visual Studio Code

    Today was the first day I came across this issue with flutter widget inspector. When you click "Select Widget Mode" then select an element, it will freeze, and this inception-like view will occur:

    Screen Shot 2020-12-30 at 2 19 09 PM

    In addition, if you just resize this window in Visual Studio code, the Widget Inspector view goes blank:

    Screen Shot 2020-12-30 at 2 26 49 PM

    I've almost lost an entire day of development because of this stupid bug. I even tried using a different computer and its still happening.

    I have a feeling something got updated automatically and broke things. Does anyone have any idea why this is occurring? It was working so well then all the sudden today it decided to break. I tried the simulator (iOS and android) and device, no luck.

    vs-code 
    opened by joshoconnor89 33
  • getDartDevelopmentServiceVersion Method not found

    getDartDevelopmentServiceVersion Method not found

    Good day.

    When I click on the Dev Tools button, a disconnect occurs. I tried:

    • to run ios and android in VS Code
    • to run android in android studio
    • Reinstalled dart
    • Flutter clean
    • Removed app from device

    How to solve this problem?

    Thanks

    Installed extensions in VS Code: Flutter 3.19.0 Dart 3.19.1

    [✓] Flutter (Channel stable, 1.22.6, on Mac OS X 10.15.7 19H2 darwin-x64, locale en-RU)
        • Flutter version 1.22.6 at /Users/yauheni.prakapenka/flutter
        • Framework revision 9b2d32b605 (7 days ago), 2021-01-22 14:36:39 -0800
        • Engine revision 2f0af37152
        • Dart version 2.10.5
    
    [✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
        • Android SDK at /Users/yauheni.prakapenka/Library/Android/sdk
        • Platform android-30, build-tools 30.0.3
        • ANDROID_HOME = /Users/yauheni.prakapenka/Library/Android/sdk
        • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
        • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
        • All Android licenses accepted.
    
    [✓] Xcode - develop for iOS and macOS (Xcode 12.2)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 12.2, Build version 12B45b
        • CocoaPods version 1.8.4
    
    [✓] Android Studio (version 4.1)
        • Android Studio at /Applications/Android Studio.app/Contents
        • Flutter plugin installed
        • Dart plugin version 201.9317
        • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    
    [✓] IntelliJ IDEA Community Edition (version 2020.3.2)
        • IntelliJ at /Applications/IntelliJ IDEA CE.app
        • Flutter plugin installed
        • Dart plugin version 203.6912
    
    [✓] VS Code (version 1.52.1)
        • VS Code at /Applications/Visual Studio Code.app/Contents
        • Flutter extension version 3.19.0
    
    [✓] Connected device (1 available)
        • AOSP on IA Emulator (mobile) • emulator-5554 • android-x86 • Android 9 (API 28) (emulator)
        ! Error: iPhone Xr is not connected. Xcode will continue when iPhone Xr is connected. (code -13)
    

    Screenshot 01-30-2021 11 08 15

    opened by yauheniprakapenka 30
  • Switch to new routing/pages APIs

    Switch to new routing/pages APIs

    This switches away from onGenerateRoute and friends and instead returns Pages and uses RouterDelegate+RouteInformationParser to control the pages we display (and persist them in the address bar).

    All tests are passing, though I had two make some changes (see my comments below) that may/may not be correct.

    I've manually tested all the bits I can think of (including things like disconnecting/reconnecting), though I'm not confident I haven't missed something (for example I'm less familiar with the snapshot pages etc.).

    Fixes #1725.

    opened by DanTup 26
  • Dev tools unable to connect to VM service via HTTPS

    Dev tools unable to connect to VM service via HTTPS

    When dev-tools are launched from within VSCode they try connecting to the Flutter app via an HTTPS connection but fails to do so. Only when I manually change the URL to one with HTTP does it work. image

    opened by bh0mbalziyad 26
  • DevTools problem:  an infinite loop problem freezes the app

    DevTools problem: an infinite loop problem freezes the app

    devtoollllllllllllllllll

    DevTools does no longer work, it freeze the app at that step when trying to connect:

    {"event":"app.started","params":{"appId":"7cce3816-01c7-414d-88d2-b4c66aa9e919"}}] [{"id":0,"result":{"value":"android","type":"_extensionType","method":"ext.flutter.platformOverride"}}] [{"id":1,"result":{"timeDilation":"1.0","type":"_extensionType","method":"ext.flutter.timeDilation"}}] [{"id":2,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.debugPaint"}}] [{"id":3,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.debugPaintBaselinesEnabled"}}] [{"id":4,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.repaintRainbow"}}] [{"id":5,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.showPerformanceOverlay"}}] [{"id":6,"result":{"enabled":"true","type":"_extensionType","method":"ext.flutter.debugAllowBanner"}}] [{"id":7,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.inspector.structuredErrors"}}] [{"id":8,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.inspector.show"}}] [{"id":9,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.inspector.trackRebuildDirtyWidgets"}}] [{"id":10,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.inspector.trackRepaintWidgets"}}] [{"id":11,"result":{"enabled":"true","type":"_extensionType","method":"ext.flutter.inspector.structuredErrors"}}] [{"id":12,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.inspector.trackRebuildDirtyWidgets"}}] [{"id":13,"result":{"enabled":"false","type":"_extensionType","method":"ext.flutter.inspector.trackRepaintWidgets"}}]

    It does not open the link!

    An Observatory debugger and profiler on sdk gphone x86 is available at: http://127.0.0.1:61814/UNYPG_eq9Qg=/ The Flutter DevTools debugger and profiler on sdk gphone x86 is available at: http://127.0.0.1:9108?uri=http%3A%2F%2F127.0.0.1%3A61814%2FUNYPG_eq9Qg%3D%2F

    It does not open the link!

    the loading goes on and on

    Could you help?

    waiting for customer response 
    opened by benedicte69 24
  • Support Firefox

    Support Firefox

    I'd really like to be able to use my browser of choice, Firefox, with Flutter's DevTools.

    (Not only that, but I'd also appreciate if web projects in general weren't tied to specific browsers — it hurts web standards and I'd hate another IE-like situation where standards don't matter.)

    opened by 12people 24
  • DevTolls Network Tab Not Showing Any Request

    DevTolls Network Tab Not Showing Any Request

    <-- Please describe your problem here. Be sure to include repro steps. -->


    DevTools version: 2.15.0 Connected Device: CPU / OS: arm64 (64 bit) ios Dart Version: 2.18.4 Flutter Version: 3.3.7 / stable Framework / Engine: e99c9c7cd9 / 857bd6b74c Connected app type: Flutter native (debug build)

    opened by Muhammad-Sharif-Ullah 0
  • Network page does not show requests when running on Hyper-V

    Network page does not show requests when running on Hyper-V

    Problem description

    The Network page of DevTools does not show network requests when running from within a Windows 11 VM Hyper-V virtual machine. Other hypervisors and operating systems have not been tested.

    Steps to reproduce

    1. Run the example code on a bare-metal Windows 11 machine to verify the network request appears.
    2. Run the same code on a Windows 11 Hyper-V virtual machine and observe no network request appears.

    Example code

    import 'dart:io';
    
    import 'package:flutter/material.dart';
    
    void main() {
      runApp(const MyApp());
    }
    
    Future<HttpClientRequest> load() async {
      HttpClient client = HttpClient();
      final HttpClientRequest response =
          await client.get('tempapi.proj.me', 443, '/api/GB3XretjA');
      return response;
    }
    
    class MyApp extends StatelessWidget {
      const MyApp({super.key});
    
      @override
      Widget build(BuildContext context) {
        return const MaterialApp(
          home: MyHomePage(),
        );
      }
    }
    
    class MyHomePage extends StatelessWidget {
      const MyHomePage({super.key});
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          body: FutureBuilder(
            future: load(),
            builder:
                (BuildContext context, AsyncSnapshot<HttpClientRequest> snapshot) {
              if (snapshot.connectionState == ConnectionState.done) {
                return Text('${snapshot.data}');
              }
    
              return const Text("Fetching...");
            },
          ),
        );
      }
    }
    
    opened by hanskokx 0
  • Layout Explorer is Blank.

    Layout Explorer is Blank.

    Ran into layout issues

    "Failed assertion: line 2001 pos 12: 'hasSize'".

    Tried checking it out on the Layout Explorer, Layout explorer just shows a blank page. image

    opened by PeterAkande 0
  • Enable console for memory screen.

    Enable console for memory screen.

    RELEASE_NOTE_EXCEPTION=[changes under the flag]

    1. Rename DebuggerConsole to ConsolePane and move to shared/console
    2. Enable console for memory screen under experimental flag
    3. Move state that needs to be shared between inspector, debugger, and console, from DebuggerController to AppState owned by ServiceConnectionManager.
    opened by polina-c 0
  • DevTools are just empty in Visual Studio Code

    DevTools are just empty in Visual Studio Code

    Hi! So basically I have an empty DevTools for some reason: image I've tried to reinstall flutter, use an android simulator but to no avail. No errors in flutter doctor. Is there anything I can do to fix that?... BTW, it works in the browser and on channel master


    DevTools version: 2.20.0 Connected Device: CPU / OS: arm64 (64 bit) ios Dart Version: 2.18.5 Flutter Version: 3.3.9 / stable Framework / Engine: b8f7f1f986 / 8f2221fbef Connected app type: Flutter native (debug build)

    opened by gidrokolbaska 0
Releases(v0.9.2)
Owner
Flutter
Flutter is Google's UI toolkit for building beautiful, natively compiled applications for mobile, web, desktop, and embedded devices from a single codebase.
Flutter
Dart-ci-tools - A container image with flutter and various CI tools.

dart-ci-tools Container built from the official Dart image, with various CI tools written in Dart. Project Notes There are tools available to: deploy

null 1 Jan 12, 2022
[Flutter SDK V.2] - Youtube Video is a Flutter application built to demonstrate the use of Modern development tools with best practices implementation like Clean Architecture, Modularization, Dependency Injection, BLoC, etc.

[Flutter SDK V.2] - Youtube Video is a Flutter application built to demonstrate the use of Modern development tools with best practices implementation like Clean Architecture, Modularization, Dependency Injection, BLoC, etc.

R. Rifa Fauzi Komara 17 Jan 2, 2023
Performance overlay for Flutter apps that works on web.

performance Performance overlay for Flutter apps that works on web. Repo structure This repo currently contains the following packages: Package Conten

null 25 Dec 3, 2022
PrestaShop Mobile Application - High Performance Flutter App

PrestaShop Mobile Application High performance mobile application developed with Flutter technology. Beside the performance and architecture the uniqu

Binshops 8 Oct 25, 2022
Redesign Unsplash Mobile Application with flutter tools.

flutter_splash Redesign Unsplash Mobile Application with flutter tools. About its open source application based Unsplash API for training Flutter , Di

pouya 1 Sep 5, 2021
🦀🦀 High performance Crypto library of Rust implementation for Flutter

r_crypto Rust backend support crypto flutter library, much faster than Dart-implementation library, light-weight library. Some crypto support hardware

Tino 28 Dec 17, 2022
A set of useful sliver tools that are missing from the flutter framework

sliver_tools A set of useful sliver tools that are missing from the flutter framework. Here is a taste what you can make using this package The struct

Pieter van Loon 419 Jan 4, 2023
A container image with flutter and various CI tools.

flutter-ci-tools A Docker container built from the cirrusci/flutter image, with various CI tools. Project Notes With the available tools you can: depl

null 1 Jan 12, 2022
Fake Firebase Performance for use during Flutter unit & widget tests.

Fake Firebase Performance Fakes to write unit tests for apps using Firebase Performance monitoring. Instantiate a FakeFirebasePerformance, then pass i

Philipp Bauer 2 Apr 16, 2022
Write iOS&Android Code using Dart. This package liberates you from redundant glue code and low performance of Flutter Channel.

Dart_Native Dart_Native operates as both a code generator tool and a bridge to communicate between Dart and native APIs. Replaces the low-performing F

DartNative 893 Jan 4, 2023
A PC client to control mobiles by adb tools in Flutter.

mobile_controller A new Flutter project for PC to control mobiles by adb tool. Develop in progress, not release yet... Features Provide computer contr

Flukit 5 Nov 15, 2022
Provide powerfull tools to help you build your Flutter design system.

Provide powerfull tools to help you build your design system. About flutter_design contains packages to help you bootstrap your design system with a w

Min Zhao 23 Dec 3, 2022
Various eBay tools for Flutter development

Flutter Glove Box given_when_then golden_toolkit page_object Contains various testing tools that eBay Motors App team is using in their development on

eBay 275 Dec 21, 2022
Flutter project that shows how to work with ObjectBox - High Performance NoSQL Database.

Flutter ObjectBox Example Flutter project that shows how to work with ObjectBox - High Performance NoSQL Database. This project shows - how to persist

Sandip Pramanik 6 Nov 1, 2022
Raden Saleh 20 Aug 12, 2023
Raden Saleh 53 Jul 27, 2023
AI Library to create efficient Artificial Neural Networks. Computation uses SIMD (Single Instruction Multiple Data) to improve performance.

eneural_net eNeural.net / Dart is an AI Library for efficient Artificial Neural Networks. The library is portable (native, JS/Web, Flutter) and the co

null 21 Dec 29, 2022
A super effective dart library delivering performance & ensuring greater build speed.

A super effective Dart and Flutter library for delivering performante app ?? & ensuring greater build speed ?? . The package has some cook utilizes wh

Rexford Asamoah 2 Nov 22, 2021
Ozzie is your testing friend. Ozzie will take an screenshot during integration tests whenever you need. Ozzie will capture performance reports for you.

ozzie.flutter Ozzie is your testing friend. Ozzie will take an screenshot during integration tests whenever you need. Ozzie will capture performance r

Jorge Coca 40 Nov 3, 2022