Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

reword add-to-app landing page and add video #3338

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 38 additions & 15 deletions src/docs/development/add-to-app/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,38 +14,61 @@ render a part of your app's UI in Flutter. Or just to run shared Dart logic.
In a few steps, you can also bring the productivity and the expressiveness of
Flutter into your own app.

TODO(xster): add steps overview videos.
<div class="container">
<div class="row">
<div class="col-sm text-center">
<figure class="figure">
<img src="/images/add-to-app/android-overview.gif" class="figure-img img-fluid" alt="Add-to-app on Android" />
<figcaption class="figure-caption">
Android
</figcaption>
</figure>
</div>
<div class="col-sm">
<figure class="figure text-center">
<img src="/images/add-to-app/ios-overview.gif" class="figure-img img-fluid" alt="Add-to-app on iOS" />
<figcaption class="figure-caption">
iOS
</figcaption>
</figure>
</div>
</div>
</div>

As of Flutter release v1.12, add-to-app is supported for basic scenarios with
As of Flutter release v1.12, add-to-app is supported for the basic scenario of
integrating one fullscreen Flutter instance at a time per app. It presently has
the _**following limitations**_:

- One fullscreen Flutter instance at a time. Running multiple Flutter instances
or in partial screen views may have undefined behaviors.
- Running multiple Flutter instances or in partial screen views may have
undefined behaviors.
- Using Flutter in background mode is still WIP.
- Packing a Flutter library into another sharable library or packing multiple
Flutter libraries into an application is not currently supported
Flutter libraries into an application is not currently supported.

## Supported features

### Add to Android applications

- Auto-build and import the Flutter module by adding a Flutter SDK hook to
your Gradle script; or
- Build your Flutter module into a generic [Android AAR](https://developer.android.com/studio/projects/android-library)
- Android Studio Android/Flutter co-editing and module creation/import wizard
- Java and Kotlin host apps supported
- Build your Flutter module into a generic [Android Archive (AAR)](https://developer.android.com/studio/projects/android-library).
- Android Studio Android/Flutter co-editing and module creation/import wizard.
- Java and Kotlin host apps supported.
- Flutter modules can use [Flutter plugins](https://pub.dev/flutter) to interact
with the platform. Android plugins should be [migrated to the V2 plugins APIs](/docs/development/packages-and-plugins/plugin-api-migration)
for best add-to-app correctness.
- Support for Flutter debugging and stateful hot reload by using `flutter attach`
from IDEs or the command line to connect to an app containing Flutter.

### Add to iOS applications
- Auto-build and import the Flutter module by adding a Flutter SDK hook to
your CocoaPods and to your Xcode build phase; or
- Build your Flutter module into a generic [iOS Framework](https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WhatAreFrameworks.html)
- Objective-C and Swift host apps supported

### Android and iOS
- Build your Flutter module into a generic [iOS Framework](https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WhatAreFrameworks.html).
- Objective-C and Swift host apps supported.
- Flutter modules can use [Flutter plugins](https://pub.dev/flutter) to interact
with the platform
- Flutter modules support Stateful Hot Reload by using `flutter attach` from
IDEs or the command line to connect to an app containing Flutter
with the platform.
- Support for Flutter debugging and stateful hot reload by using `flutter attach`
from IDEs or the command line to connect to an app containing Flutter.

See our [add-to-app GitHub Samples repository](https://github.com/flutter/samples/tree/master/experimental/add_to_app)
for sample projects in Android and iOS that import a Flutter module for UI.
Expand Down
Binary file added src/images/add-to-app/android-overview.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/images/add-to-app/ios-overview.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.