mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
![]() Fair amount of typos spotted and fixed. Some of them are in comments, some of them are in code and some of them are in nondart files. There is no need for issues since it's a typo fix. I have doubts about [packages/flutter_tools/lib/src/ios/core_devices.dart](https://github.com/flutter/flutter/compare/master...anisalibegic:flutter:master#diff-fdbc1496b4bbe7e2b445a567fd385677af861c0093774e3d8cc460fdd5b794fa), I have a feeling it might broke some things on the other end, even though it's a typo. |
||
---|---|---|
.. | ||
lib | ||
src.tmpl | ||
test | ||
.gitignore.tmpl | ||
.metadata.tmpl | ||
analysis_options.yaml.tmpl | ||
build.dart.tmpl | ||
CHANGELOG.md.tmpl | ||
ffigen.yaml.tmpl | ||
LICENSE.tmpl | ||
pubspec.yaml.tmpl | ||
README.md.tmpl |
# {{projectName}} {{description}} ## Getting Started This project is a starting point for a Flutter [FFI package](https://docs.flutter.dev/development/platform-integration/c-interop), a specialized package that includes native code directly invoked with Dart FFI. ## Project structure This template uses the following structure: * `src`: Contains the native source code, and a CmakeFile.txt file for building that source code into a dynamic library. * `lib`: Contains the Dart code that defines the API of the plugin, and which calls into the native code using `dart:ffi`. * `bin`: Contains the `build.dart` that performs the external native builds. ## Building and bundling native code `build.dart` does the building of native components. Bundling is done by Flutter based on the output from `build.dart`. ## Binding to native code To use the native code, bindings in Dart are needed. To avoid writing these by hand, they are generated from the header file (`src/{{projectName}}.h`) by `package:ffigen`. Regenerate the bindings by running `flutter pub run ffigen --config ffigen.yaml`. ## Invoking native code Very short-running native functions can be directly invoked from any isolate. For example, see `sum` in `lib/{{projectName}}.dart`. Longer-running functions should be invoked on a helper isolate to avoid dropping frames in Flutter applications. For example, see `sumAsync` in `lib/{{projectName}}.dart`. ## Flutter help For help getting started with Flutter, view our [online documentation](https://flutter.dev/docs), which offers tutorials, samples, guidance on mobile development, and a full API reference.