diff --git a/material_3_demo/lib/main.dart b/material_3_demo/lib/main.dart index 5a0ec563b..30426c56e 100644 --- a/material_3_demo/lib/main.dart +++ b/material_3_demo/lib/main.dart @@ -2,12 +2,31 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +import 'dart:convert'; + import 'package:flutter/material.dart'; +import 'package:web_startup_analyzer/web_startup_analyzer.dart'; import 'constants.dart'; import 'home.dart'; -void main() { +void main() async { + var analyzer = WebStartupAnalyzer(additionalFrameCount: 10); + debugPrint(json.encode(analyzer.startupTiming)); + analyzer.onFirstFrame.addListener(() { + debugPrint(json.encode({'firstFrame': analyzer.onFirstFrame.value})); + }); + analyzer.onFirstPaint.addListener(() { + debugPrint(json.encode({ + 'firstPaint': analyzer.onFirstPaint.value?.$1, + 'firstContentfulPaint': analyzer.onFirstPaint.value?.$2, + })); + }); + analyzer.onAdditionalFrames.addListener(() { + debugPrint(json.encode({ + 'additionalFrames': analyzer.onAdditionalFrames.value, + })); + }); runApp( const App(), ); diff --git a/material_3_demo/pubspec.yaml b/material_3_demo/pubspec.yaml index 25be7578b..0f3b334f7 100644 --- a/material_3_demo/pubspec.yaml +++ b/material_3_demo/pubspec.yaml @@ -9,6 +9,7 @@ version: 1.0.0+1 environment: sdk: ^3.2.0 + flutter: ^3.16.0 dependencies: flutter: @@ -16,6 +17,8 @@ dependencies: cupertino_icons: ^1.0.2 url_launcher: ^6.1.8 + web_startup_analyzer: + path: ../web/_packages/web_startup_analyzer dev_dependencies: analysis_defaults: diff --git a/material_3_demo/web/index.html b/material_3_demo/web/index.html index 2168a65da..8f59269bf 100644 --- a/material_3_demo/web/index.html +++ b/material_3_demo/web/index.html @@ -38,22 +38,30 @@ +
- + }); +