# Example of embedding Flutter using FlutterView

This project demonstrates how to embed Flutter within an iOS or Android
application. On iOS, the iOS and Flutter components are built with Xcode. On
Android, the Android and Flutter components are built with Android Studio or
gradle.

You can read more about
[accessing platform and third-party services in Flutter](https://flutter.io/platform-services/).

## iOS

You can open `ios/Runner.xcworkspace` in Xcode and build the project as
usual. For this sample you need to run `pod install` from the `ios` folder
before building the first time.

## Android

You can open `android/` in Android Studio and build the project as usual.
