-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add an add-to-app landing page (#3265)
- Loading branch information
Showing
5 changed files
with
120 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
--- | ||
layout: toc | ||
title: Adding Flutter to Android | ||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,93 @@ | ||
--- | ||
layout: toc | ||
title: Add to existing app | ||
title: Add Flutter to existing app | ||
description: Adding Flutter as a library to an existing Android or iOS app. | ||
--- | ||
|
||
## Add-to-app | ||
|
||
It's sometimes not practical to rewrite your entire application in Flutter all | ||
at once. For those situations, Flutter can be integrated into your existing | ||
application in a piecemeal fashion as a library or module. That module can then | ||
be imported into your Android or iOS (currently supported platforms) app to | ||
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. | ||
|
||
As of Flutter release v1.12, add-to-app is supported for basic scenarios with | ||
the _**following limitations**_: | ||
|
||
- One fullscreen Flutter instance at a time. 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 | ||
|
||
## 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 | ||
|
||
### 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 | ||
- 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 | ||
|
||
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. | ||
|
||
## Get started | ||
|
||
To get started, see our project integration guide for | ||
|
||
<div class="card-deck mb-8"> | ||
<a class="card" href="/docs/development/add-to-app/android/project-setup"> | ||
<div class="card-body"> | ||
<header class="card-title text-center m-0"> | ||
Android | ||
</header> | ||
</div> | ||
</a> | ||
<a class="card" href="/docs/development/add-to-app/ios/project-setup"> | ||
<div class="card-body"> | ||
<header class="card-title text-center m-0"> | ||
iOS | ||
</header> | ||
</div> | ||
</a> | ||
</div> | ||
|
||
## API usage | ||
|
||
Once Flutter has been integrated into your project, see our API usage guides for | ||
|
||
<div class="card-deck mb-8"> | ||
<a class="card" href="/docs/development/add-to-app/android/add-flutter-screen"> | ||
<div class="card-body"> | ||
<header class="card-title text-center m-0"> | ||
Android | ||
</header> | ||
</div> | ||
</a> | ||
<a class="card" href="/docs/development/add-to-app/ios/add-flutter-screen"> | ||
<div class="card-body"> | ||
<header class="card-title text-center m-0"> | ||
iOS | ||
</header> | ||
</div> | ||
</a> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
--- | ||
layout: toc | ||
title: Adding Flutter to iOS | ||
--- |