flutter/packages/flutter_tools/templates/application
Greg Spencer 9f23866a0a
Rename module --> application in flutter create command. (#22565)
This renames the "module" template to the "application" template, and makes "application" the default. The existing "app" template is now deprecated.

flutter create also now recognizes the type of project in an existing directory, and is able to recreate it without having the template type explicitly specified (although you can still do that). It does this now by first looking in the .metadata file for the new project_type field, and if it doesn't find that, then it looks at the directory structure. Also, the .metadata file is now overwritten even on an existing directory so that 1) the project_type can be added to legacy projects, and 2) the version of Flutter that updated the project last is updated.

I also cleaned up a bunch of things in create_test.dart, added many more tests, and added an example test to the test/ directory in the generated output of the application template.

Fixes #22530
Fixes #22344
2018-10-04 13:03:20 -07:00
..
android Rename module --> application in flutter create command. (#22565) 2018-10-04 13:03:20 -07:00
common Rename module --> application in flutter create command. (#22565) 2018-10-04 13:03:20 -07:00
ios Rename module --> application in flutter create command. (#22565) 2018-10-04 13:03:20 -07:00
README.md Rename module --> application in flutter create command. (#22565) 2018-10-04 13:03:20 -07:00

Templates for Flutter Module

common

Written to root of Flutter application.

Adds Dart project files including pubspec.yaml.

android

library

Written to the .android/ hidden folder.

Contents wraps Flutter/Dart code as a Gradle project that defines an Android library.

Executing ./gradlew flutter:assembleDebug in that folder produces a .aar archive.

Android host apps can set up a dependency to this project to consume Flutter views.

gradle

Written to .android/ or android/.

Mixin for adding Gradle boilerplate to Android projects.

host_app_common

Written to either .android/ or android/.

Contents define a single-Activity, single-View Android host app with a dependency on the .android/Flutter library.

Executing ./gradlew app:assembleDebug in the target folder produces an .apk archive.

Used with either android_host_ephemeral or android_host_editable.

host_app_ephemeral

Written to .android/ on top of android_host_common.

Combined contents define an ephemeral (hidden, auto-generated, under Flutter tooling control) Android host app with a dependency on the .android/Flutter library.

host_app_editable

Written to android/ on top of android_host_common.

Combined contents define an editable (visible, one-time generated, under app author control) Android host app with a dependency on the .android/Flutter library.

ios

library

Written to the .ios/Flutter hidden folder.

Contents wraps Flutter/Dart code for consumption by an Xcode project.

iOS host apps can set up a dependency to this contents to consume Flutter views.

host_app_ephemeral

Written to .ios/ outside the Flutter/ sub-folder.

Combined contents define an ephemeral (hidden, auto-generated, under Flutter tooling control) iOS host app with a dependency on the .ios/Flutter folder contents.

The host app does not make use of CocoaPods, and is therefore suitable only when the Flutter part declares no plugin dependencies.

host_app_ephemeral_cocoapods

Written to .ios/ on top of host_app_ephemeral.

Adds CocoaPods support.

Combined contents define an ephemeral host app suitable for when the Flutter part declares plugin dependencies.