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.
Create an ios/Flutter/Generated.xcconfig
file with this entry:
FLUTTER_ROOT=[absolute path to the Flutter SDK]
There are a number of other parameters you can control with this file:
FLUTTER_APPLICATION_PATH
: The path to the directory that contains your pubspec.yaml
file relative to your xcodeproj
file.FLUTTER_BUILD_MODE
: Whether to build for debug
, profile
, or release
. Defaults to release
.FLUTTER_TARGET
: The path to your main.dart
relative to your pubspec.yaml
. Defaults to lib/main.dart
.FLUTTER_FRAMEWORK_DIR
: The absolute path to the directory that contains Flutter.framework
. Defaults to the ios-release
version of Flutter.framework
in the bin/cache
directory of the Flutter SDK.Once you've configured your project, you can open ios/HelloServices.xcodeproj
in Xcode and build the project as usual.
Create an android/local.properties
file with these entries:
sdk.dir=[path to the Android SDK]
flutter.sdk=[path to the Flutter SDK]
There are a number of other parameters you can control with this file:
flutter.buildMode
: Whether to build for debug
, profile
, or release
. Defaults to release
.flutter.jar
: The path to flutter.jar
. Defaults to the android-arm-release
version of flutter.jar
in the bin/cache
directory of the Flutter SDK.See android/app/build.gradle
for project specific settings, including:
source
: The path to the directory that contains your pubspec.yaml
file relative to your build.gradle
file.target
: The path to your main.dart
relative to your pubspec.yaml
. Defaults to lib/main.dart
.To build directly with gradle
, use the following commands:
cd android
gradle wrapper
./gradlew build
To build with Android Studio, open the android
folder in Android Studio and build the project as usual.