• Flutter package
  • More Documentation
  • Importing a Library
    • Framework Libraries
    • Dart Libraries
    • Other Libraries
  • Finding Other Libraries
  • Libraries
  • Dart
    • Core
    • VM
    • Web
  • platform_integration
  • flutter_test
  • flutter_driver
  • flutter_localizations
  • flutter_web_plugins
  • archive
  • async
  • boolean_selector
  • charcode
  • collection
  • convert
  • crypto
  • file
  • image
  • intl
  • json_rpc_2
  • matcher
  • meta
  • path
  • pedantic
  • petitparser
  • platform
  • process
  • pub_semver
  • quiver
  • source_span
  • stack_trace
  • stream_channel
  • string_scanner
  • term_glyph
  • test_api
  • typed_data
  • vector_math
  • web_socket_channel
  • xml
    • Flutter package
    Flutter package
    • Libraries
    • animation
    • cupertino
    • foundation
    • gestures
    • material
    • painting
    • physics
    • rendering
    • scheduler
    • semantics
    • services
    • widgets
    • Dart
    • dart:ui
    • Core
    • dart:async
    • dart:collection
    • dart:convert
    • dart:core
    • dart:developer
    • dart:math
    • dart:typed_data
    • VM
    • dart:ffi
    • dart:io
    • dart:isolate
    • Web
    • dart:html
    • dart:js
    • dart:js_util
    • platform_integration
    • Android
    • iOS
    • flutter_test
    • flutter_test
    • flutter_driver
    • flutter_driver
    • flutter_driver_extension
    • flutter_localizations
    • flutter_localizations
    • flutter_web_plugins
    • flutter_web_plugins
    • archive
    • archive
    • archive_io
    • async
    • async
    • boolean_selector
    • boolean_selector
    • charcode
    • charcode
    • charcode.ascii.dollar_lowercase
    • charcode.htmlentity.dollar_lowercase
    • collection
    • collection
    • dart.pkg.collection.algorithms
    • dart.pkg.collection.equality
    • dart.pkg.collection.iterable_zip
    • dart.pkg.collection.priority_queue
    • dart.pkg.collection.wrappers
    • convert
    • convert
    • crypto
    • crypto
    • file
    • chroot
    • file
    • local
    • memory
    • record_replay
    • image
    • image
    • intl
    • date_symbol_data_custom
    • date_symbol_data_file
    • date_symbol_data_http_request
    • date_symbol_data_local
    • date_symbols
    • date_time_patterns
    • intl
    • intl_standalone
    • message_lookup_by_library
    • number_symbol_data
    • number_symbols
    • json_rpc_2
    • error_code
    • json_rpc_2
    • matcher
    • matcher
    • meta
    • meta
    • meta_dart2js
    • path
    • path
    • pedantic
    • pedantic
    • petitparser
    • petitparser
    • petitparser.debug
    • petitparser.reflection
    • platform
    • platform
    • process
    • process
    • record_replay
    • pub_semver
    • pub_semver
    • quiver
    • quiver.async
    • quiver.cache
    • quiver.check
    • quiver.collection
    • quiver.core
    • quiver.iterables
    • quiver.pattern
    • quiver.strings
    • quiver.testing.async
    • quiver.testing.equality
    • quiver.testing.runtime
    • quiver.testing.time
    • quiver.time
    • source_span
    • source_span
    • stack_trace
    • stack_trace
    • stream_channel
    • isolate_channel
    • stream_channel
    • string_scanner
    • string_scanner
    • term_glyph
    • term_glyph
    • test_api
    • test_api
    • test_api.backend
    • typed_data
    • typed_data
    • typed_data.typed_buffers
    • vector_math
    • hash
    • vector_math
    • vector_math_64
    • vector_math_geometry
    • vector_math_lists
    • vector_math_operations
    • web_socket_channel
    • web_socket_channel
    • web_socket_channel.io
    • web_socket_channel.status
    • xml
    • xml
    • xml_events

    Welcome to the Flutter API reference documentation.

    Flutter is Google’s mobile UI framework for crafting high-quality nativeinterfaces on iOS and Android in record time. Flutter works with existing code,is used by developers and organizations around the world, and is free and opensource.

    The API reference herein covers all libraries that are exported by the FlutterSDK.

    More Documentation

    This site hosts Flutter's API documentation. Other documentation can be found atthe following locations:

    • flutter.cn (main site)
    • Installation
    • Codelabs
    • Contributing to Flutter

    Importing a Library

    Framework Libraries

    Libraries in the "Libraries" section below (or in the left navigation) are partof the core Flutter framework and are imported using'package:flutter/<library>.dart', like so:

    1. import 'package:flutter/material.dart';
    2. import 'package:flutter/services.dart';

    Dart Libraries

    Libraries in the "Dart" section exist in the 'dart:' namespace and are importedusing 'dart:<library>', like so:

    1. import 'dart:async';
    2. import 'dart:ui';

    Except for 'dart:core', you must import a Dart library before you can use it.

    Other Libraries

    Libraries in other sections are supporting libraries that ship with Flutter.They are organized by package and are imported using'package:<package>/<library>.dart', like so:

    1. import 'package:flutter_test/flutter_test.dart';
    2. import 'package:file/local.dart';

    Finding Other Libraries

    Flutter has a rich community of packages that have been contributed by theopen-source community. You can browse those packages atpub.dev/flutter

    Libraries

    • animation
    • The Flutter animation system. […]
    • cupertino
    • Flutter widgets implementing the current iOS design language. […]
    • foundation
    • Core Flutter framework primitives. […]
    • gestures
    • The Flutter gesture recognizers. […]
    • material
    • Flutter widgets implementing Material Design. […]
    • painting
    • The Flutter painting library. […]
    • physics
    • Simple one-dimensional physics simulations, such as springs, friction, andgravity, for use in user interface animations. […]
    • rendering
    • The Flutter rendering tree. […]
    • scheduler
    • The Flutter Scheduler library. […]
    • semantics
    • The Flutter semantics package. […]
    • services
    • Platform services exposed to Flutter apps. […]
    • widgets
    • The Flutter widgets framework. […]

    Dart

    • dart:ui
    • Built-in types and core primitives for a Flutter application. […]

    Core

    • dart:async
    • Support for asynchronous programming,with classes such as Future and Stream. […]
    • dart:collection
    • Classes and utilities that supplement the collection support in dart:core. […]
    • dart:convert
    • Encoders and decoders for converting between different data representations,including JSON and UTF-8. […]
    • dart:core
    • Built-in types, collections,and other core functionality for every Dart program. […]
    • dart:developer
    • Interact with developer tools such as the debugger and inspector. […]
    • dart:math
    • Mathematical constants and functions, plus a random number generator. […]
    • dart:typed_data
    • Lists that efficiently handle fixed sized data(for example, unsigned 8 byte integers) and SIMD numeric types. […]

    VM

    • dart:ffi
    • Foreign Function Interface for interoperability with the C programming language. […]
    • dart:io
    • File, socket, HTTP, and other I/O support for non-web applications. […]
    • dart:isolate
    • Concurrent programming using isolates:independent workers that are similar to threadsbut don't share memory,communicating only via messages. […]

    Web

    • dart:html
    • HTML elements and other resources for web-based applications that need tointeract with the browser and the DOM (Document Object Model). […]
    • dart:js
    • Low-level support for interoperating with JavaScript. […]
    • dart:js_util
    • Utility methods to efficiently manipulate typed JSInterop objects in caseswhere the name to call is not known at runtime. You should only use thesemethods when the same effect cannot be achieved with @JS annotations.These methods would be extension methods on JSObject if Dart supportedextension methods.

    platform_integration

    • Android
    • Flutter platform integration APIs for Android.
    • iOS
    • Flutter platform integration APIs for iOS.

    flutter_test

    • flutter_test
    • Testing library for flutter, built on top of package:test. […]

    flutter_driver

    • flutter_driver
    • Provides API to test Flutter applications that run on realdevices and emulators. […]
    • flutter_driver_extension
    • This library provides a Dart VM service extension that is required fortests that use package:flutter_driver to drive applications from aseparate process, similar to Selenium (web), Espresso (Android) and UIAutomation (iOS). […]

    flutter_localizations

    • flutter_localizations
    • Localizations for the Flutter library

    flutter_web_plugins

    • flutter_web_plugins

    archive

    • archive
    • archive_io

    async

    • async

    boolean_selector

    • boolean_selector

    charcode

    • charcode
    • Defines symbolic names for character code points. […]
    • charcode.ascii.dollar_lowercase
    • Declare integer constants for each ASCII character. […]
    • charcode.htmlentity.dollar_lowercase
    • Character codes based on HTML 4.01 character entity names. […]

    collection

    • collection
    • dart.pkg.collection.algorithms
    • Import collection.dart instead.
    • dart.pkg.collection.equality
    • Import collection.dart instead.
    • dart.pkg.collection.iterable_zip
    • Import collection.dart instead.
    • dart.pkg.collection.priority_queue
    • Import collection.dart instead.
    • dart.pkg.collection.wrappers
    • Import collection.dart instead.

    convert

    • convert

    crypto

    • crypto

    file

    • chroot
    • file
    • local
    • memory
    • record_replay

    image

    • image
    • The image library aims to provide server-side programs the ability to load,manipulate, and save various image file formats.

    intl

    • date_symbol_data_custom
    • date_symbol_data_file
    • This file should be imported, along with date_format.dart in order to readlocale data from files in the file system.
    • date_symbol_data_http_request
    • This file should be imported, along with date_format.dart in order to readlocale data via http requests to a web server..
    • date_symbol_data_local
    • Date/time formatting symbols for all locales. […]
    • date_symbols
    • date_time_patterns
    • Date/time formatting symbols for a large subset of locales. […]
    • intl
    • This library provides internationalization and localization. This includesmessage formatting and replacement, date and number formatting and parsing,and utilities for working with Bidirectional text. […]
    • intl_standalone
    • This provides facilities for Internationalization that are only availablewhen running standalone. You should import only one of this orintl_browser.dart. Right now the only thing provided here is findingthe operating system locale.
    • message_lookup_by_library
    • Message/plural format library with locale support. This can have differentimplementations based on the mechanism for finding the localized versions ofmessages. This version expects them to be in a library named e.g.'messages_en_US'. The prefix is set in the "initializeMessages" call, whichmust be made for a locale before any lookups can be done. […]
    • number_symbol_data
    • Date/time formatting symbols for all locales. […]
    • number_symbols

    json_rpc_2

    • error_code
    • json_rpc_2

    matcher

    • matcher

    meta

    • meta
    • Constants for use in metadata annotations. […]
    • meta_dart2js
    • Constants for use in metadata annotations to provide hints to dart2js. […]

    path

    • path

    pedantic

    • pedantic

    petitparser

    • petitparser
    • This package contains the core library of PetitParser, a dynamic parsercombinator framework.
    • petitparser.debug
    • This package contains some simple debugging tools.
    • petitparser.reflection
    • This package contains tools to reflect on and transform parsers.

    platform

    • platform

    process

    • process
    • record_replay

    pub_semver

    • pub_semver

    quiver

    • quiver.async
    • quiver.cache
    • quiver.check
    • A simple set of pre/post-condition checkers based on theGuava Preconditionsclass in Java. […]
    • quiver.collection
    • Collection classes and related utilities.
    • quiver.core
    • Simple code with broad use cases.
    • quiver.iterables
    • quiver.pattern
    • This library contains utilities for working with RegExps and otherPatterns.
    • quiver.strings
    • quiver.testing.async
    • Testing support for dart:async.
    • quiver.testing.equality
    • Utilities for testing the equality of Dart object
    • quiver.testing.runtime
    • Testing support related to the Dart runtime.
    • quiver.testing.time
    • Testing support for dart:core time functionality.
    • quiver.time

    source_span

    • source_span

    stack_trace

    • stack_trace

    stream_channel

    • isolate_channel
    • stream_channel

    string_scanner

    • string_scanner

    term_glyph

    • term_glyph

    test_api

    • test_api
    • test_api.backend

    typed_data

    • typed_data
    • Utilities and functionality related to the "dart:typed_data" library.
    • typed_data.typed_buffers
    • Growable typed-data lists. […]

    vector_math

    • hash
    • vector_math
    • A library containing different type of vector operations for use in games,simulations, or rendering. […]
    • vector_math_64
    • A library containing different type of vector operations for use in games,simulations, or rendering. […]
    • vector_math_geometry
    • A library containing geometry generators (like CubeGenerator,SphereGenerator and CylinderGenerator) and filters (BarycentricFilter,ColorFilter and InvertFilter).
    • vector_math_lists
    • A library for working with lists of vectors in a memory efficient way.
    • vector_math_operations
    • A library containing matrix operations (Matrix44Operations) that can beperformed on Float32List instances and SIMD optimized operations(Matrix44SIMDOperations) that can be performed on Float32x4Listinstances.

    web_socket_channel

    • web_socket_channel
    • web_socket_channel.io
    • web_socket_channel.status
    • Status codes that are defined in the WebSocket spec. […]

    xml

    • xml
    • Dart XML is a lightweight library for parsing, traversing, querying andbuilding XML documents.
    • xml_events
    • Dart XML Events is an event based library to asynchronously parse XMLdocuments and to convert them to other representations.