Commit graph

77 commits

Author SHA1 Message Date
jmagman 78cca6250a
Always install the ephemeral engine copy instead of fetching from CocoaPods specs (#37906) 2019-08-09 17:37:11 -07:00
jmagman e6d94ee40f
Use relative paths when installing module pods (#37738) 2019-08-07 12:59:11 -07:00
Emmanuel Garcia c08a3c7a0a
Add metadata to indicate if the host app contains a Flutter module (#37731) 2019-08-06 22:38:09 -07:00
Jenn Magder 975156e91c
If xcode_backend.sh script fails or substitute variables are missing, fail the host Xcode build (#37449) 2019-08-02 13:01:25 -07:00
stevemessick 93dd90fc1a
Add .android/Flutter/flutter.iml to module template. (#37405) 2019-08-01 15:47:00 -07:00
Jenn Magder 1bcaa15018
Make podhelper.rb a template to avoid passing in the module name (#37276) 2019-07-31 11:34:22 -07:00
Jenn Magder bd47a31e32
Vend Flutter module App.framework as a local CocoaPod pod to be installed by a host app (#36793) 2019-07-30 09:58:39 -07:00
Emmanuel Garcia 242a4225a1
Flutter build aar (#36732)
`flutter build aar`

This new build command works just like `flutter build apk` or `flutter build appbundle`, but for plugin and module projects.

This PR also refactors how plugins are included in app or module projects. By building the plugins as AARs, the Android Gradle plugin is able to use Jetifier to translate support libraries into AndroidX libraries for all the plugin's native code. Thus, reducing the error rate when using AndroidX in apps.

This change also allows to build modules as AARs, so developers can take these artifacts and distribute them along with the native host app without the need of the Flutter tool. This is a requirement for add to app.

`flutter build aar` generates POM artifacts (XML files) which contain metadata about the native dependencies used by the plugin. This allows Gradle to resolve dependencies at the app level. The result of this new build command is a single build/outputs/repo, the local repository that contains all the generated AARs and POM files.

In a Flutter app project, this local repo is used by the Flutter Gradle plugin to resolve the plugin dependencies. In add to app case, the developer needs to configure the local repo and the dependency manually in `build.gradle`:


repositories {
    maven {
        url "<path-to-flutter-module>build/host/outputs/repo"
    }
}

dependencies {
    implementation("<package-name>:flutter_<build-mode>:1.0@aar") {
       transitive = true
    }
}
2019-07-23 09:27:42 -07:00
Emmanuel Garcia c9b466f9e2
Revert "Add flutter build aar (#35217)" (#36731)
This reverts commit 11460b8378.
2019-07-22 22:07:59 -07:00
Emmanuel Garcia 11460b8378
Add flutter build aar (#35217)
`flutter build aar`

This new build command works just like `flutter build apk` or `flutter build appbundle`, but for plugin and module projects.

This PR also refactors how plugins are included in app or module projects. By building the plugins as AARs, the Android Gradle plugin is able to use Jetifier to translate support libraries into AndroidX libraries for all the plugin's native code. Thus, reducing the error rate when using AndroidX in apps.

This change also allows to build modules as AARs, so developers can take these artifacts and distribute them along with the native host app without the need of the Flutter tool. This is a requirement for add to app.

`flutter build aar` generates POM artifacts (XML files) which contain metadata about the native dependencies used by the plugin. This allows Gradle to resolve dependencies at the app level. The result of this new build command is a single build/outputs/repo, the local repository that contains all the generated AARs and POM files.

In a Flutter app project, this local repo is used by the Flutter Gradle plugin to resolve the plugin dependencies. In add to app case, the developer needs to configure the local repo and the dependency manually in `build.gradle`:


repositories {
    maven {
        url "<path-to-flutter-module>build/host/outputs/repo"
    }
}

dependencies {
    implementation("<package-name>:flutter_<build-mode>:1.0@aar") {
       transitive = true
    }
}
2019-07-22 20:46:01 -07:00
Jenn Magder 5e650af7fa
Clean up host_app_ephemeral_cocoapods Profile build settings (#36498) 2019-07-19 12:49:26 -07:00
Anoop B 90326b6184 [ImgBot] Optimize images (#35971) 2019-07-11 21:16:48 -07:00
Jenn Magder ec2c3f2116
Disable CocoaPods input and output paths in Xcode build phase for ephemeral add2app (#35833) 2019-07-10 10:40:15 -07:00
Karen Rustad Tölva 9155795883 Fix typo in main.dart templates (#35684) 2019-07-08 10:36:44 -07:00
Jenn Magder 95a1816698
Clean up host_app_ephemeral Profile build settings (#35307) 2019-07-01 11:02:25 -07:00
Jenn Magder 1b176c5df1
Update Xcode projects to recommended Xcode 10 project settings (#34738) 2019-06-20 08:48:19 -07:00
Jenn Magder c40d701e96
Change Xcode project developmentRegion to 'en' and plist CFBundleDevelopmentRegion to DEVELOPMENT_LANGUAGE (#34293) 2019-06-12 11:31:17 -07:00
Josh Burton 9223a44b8a Adds the androidX flag to a modules pubspec.yaml template so it is se… (#34066)
This is a small follow up to the previous AndroidX PR: https://github.com/flutter/flutter/pull/31028

This fixes an issue mentioned [here](https://github.com/flutter/flutter/issues/28805) where the androidX flag for a module is not set when creating a new project:

`flutter create --androidx -t module my_flutter`
2019-06-07 16:09:21 -07:00
Josh Burton d0e45a2369 Adds support for generating projects that use AndroidX support libraries (#31028) 2019-05-31 18:33:02 -07:00
Emmanuel Garcia 12a0e475e2
Make paths absolute in settings.gradle (#33228) 2019-05-23 23:32:11 -07:00
Michael Thomsen 7ae3caf309
Rename flutter packages to flutter pub (#33041) 2019-05-21 16:38:58 +02:00
Kate Lovett 054d9bb2f1
Updating dart.dev related links (#32641)
* Updating dart.dev related links

* Update packages/flutter_tools/lib/src/base/context.dart
2019-05-14 10:35:00 -07:00
Tim Sneath 529189791c
Replace flutter.io with flutter.dev (#30562) 2019-04-05 11:39:30 -07:00
KyleWong 1c0a06f397 Make version documentation clearer. (#27278)
Currently, in pubspec.yaml, semver.org is referred to for more about versioning.
However, the versionCode/versionName could differ on different platforms (iOS, Android, Dart).

This adds more clear and complete information that could help users to understand it better.

See: #27251
2019-02-11 16:29:38 -08:00
KyleWong 7c19ec6ca8 Add2App: Fix crash resulted from hard-code module 'app' based resource copy. (#27154) 2019-01-30 10:29:29 -08:00
Jonah Williams f777db2b78
add uiMode to android:configChanges (#26896) 2019-01-22 10:37:22 -08:00
Dan Field 386f3466b5
Roll engine to 05fee4eeee0ff6b219b1fcc394371e5f6963cc46 (#26713)
* move flutter_assets to App.framework

* Roll engine to 05fee4eeee0ff6b219b1fcc394371e5f6963cc46

05fee4eee Update default flutter_assets path for iOS embedding (flutter/engine#7518)
02205db01 Roll src/third_party/skia 5d052dac3ac1..02738a86e5fd (4 commits) (flutter/engine#7541)
af907c074 Roll src/third_party/skia 5c7a3ac0e214..5d052dac3ac1 (7 commits) (flutter/engine#7540)
dde286673 IWYU to get SkFontMetrics (flutter/engine#7539)
2019-01-21 21:23:04 -08:00
Dan Field d8d36bc7e8
targetSdkVersion 28 (#26798) 2019-01-19 11:59:42 -08:00
mcplectrum b4daf33807 Fix Podfile issue #24342 (#25079)
* Fix Podfile issue #24342

Sometimes base configurations  (config.base_configuration_reference) can be nil, which leads to undefined method `real_path' for nil:NilClass.

* Disable bitcode in every case
2019-01-17 15:00:51 -08:00
Dan Field 4c99958df6
Revert "Move flutter_assets to App.framework (#26630)" (#26675)
This reverts commit d8db70af1a.
2019-01-16 16:46:37 -08:00
Dan Field d8db70af1a
Move flutter_assets to App.framework (#26630)
* move flutter_assets to App.framework

* remove flutter_assets references from all pbxproj files checked in
2019-01-16 14:02:54 -08:00
Dan Field 025d04ad52
remove todo (#26562) 2019-01-15 08:42:12 -08:00
Jason Simmons cf4c903144
Update compileSdkVersion in the Android app templates to Android P (#26444)
Fixes https://github.com/flutter/flutter/issues/25703
2019-01-14 16:16:12 -08:00
kongshanshan33 305ab1a35b Fix project directory has spaces lead to compile error when use 'flutter create -t module'command (#23817) 2019-01-09 11:18:40 -08:00
Sean Freiburg 0468742910 Fix flutter root error message string interpolation (#24944)
The variable isn't interpolating because it's using "${}" when ruby uses "#{}".
2019-01-09 10:57:20 -08:00
Dan Field 1407091bfb
Fix red tree (Android module) (#26270) 2019-01-08 20:40:19 -08:00
Devon Carew 322afbb160
rev the min dart sdk dep in the templates to 2.1.0 (#26235) 2019-01-08 16:20:52 -05:00
Dan Field 2729385758
Make host app test actually test host app (#24131)
* Make host app test actually test host app

* mark updated test as flaky
2018-11-09 19:09:56 -08:00
Dan Field 9d53d7f848
Update pubspec template docs for module/plugin (#24081)
* Document module pubspec

* update doc on plugin template

* clarify language
2018-11-07 17:20:18 -08:00
Dan Field 028087d0fc
fix identifier for release.xcconfig in module template (#23978) 2018-11-06 22:44:01 -08:00
xster 7be8562202
Add cupertino_icons dependency to module pubspec template (#23961) 2018-11-06 10:52:00 -08:00
Dan Field fd6b2e198c
Re-reland Xcode backend refactor (#23762)
* Use Xcode build configurations to drive Flutter build mode

* Proper check wrt local_engine, print error if profile mode misisng

* Remove unused code, update tests, fix template problem, update warning

* fix up warning

* add explanatory dev comment

* fix whitespace

* missing words, change lambda arrow to function body

* error indentation

* Test early exits for xcode_backend.sh

* only on macOS, use right test

* Update error messages

* case insensitive compare for build config

* Update gallery podfile

* update projects to add profile configuration

* make compatible with flavors

* add missing plist files

* add FLUTTER_FRAMEWORK_DIR back, set swift version for profile, tell Podfile about profile
2018-10-31 16:37:53 -07:00
Devon Carew 72b1a2b895
update the docs for the module template (#23699)
* update the docs for the module template

* update text
2018-10-30 13:30:10 -07:00
Dan Field 7217999a9a
Revert "Reland Xcode backend refactor" (#23737)
* Revert "Update templates (#23698)"

This reverts commit 5b0de6d679.

* Revert "Verify that date/number translations exist for all supported languages (#23692)"

This reverts commit 3449edf256.

* Revert "Reland Xcode backend refactor (#23574)"

This reverts commit 7270f2845d.
2018-10-30 09:36:31 -07:00
Ian Hickson 5b0de6d679
Update templates (#23698)
Removes some `new`s and other minor cleanup.
2018-10-30 07:58:41 -07:00
Dan Field 7270f2845d
Reland Xcode backend refactor (#23574)
* Use Xcode build configurations to drive Flutter build mode

* Proper check wrt local_engine, print error if profile mode misisng

* Remove unused code, update tests, fix template problem, update warning

* fix up warning

* add explanatory dev comment

* fix whitespace

* missing words, change lambda arrow to function body

* error indentation

* Test early exits for xcode_backend.sh

* only on macOS, use right test

* Update error messages

* case insensitive compare for build config

* Update gallery podfile

* update projects to add profile configuration

* make compatible with flavors

* add missing plist files
2018-10-30 07:23:19 -07:00
Dan Field 628e8ec0b9
Revert "Xcode backend refactor (#23387)" (#23528)
This reverts commit def1d80566.
2018-10-25 13:25:09 -07:00
Dan Field def1d80566
Xcode backend refactor (#23387)
* Use Xcode build configurations to drive Flutter build mode
2018-10-25 11:29:31 -07:00
Stanislav Baranov 323d1574c6
newly created apps / plugins should use latest gradle dependencies (#22790) (#23314) 2018-10-19 19:07:06 -07:00
Yegor 82d6589590
Revert "newly created apps / plugins should use latest gradle dependencies (#22790)" (#23263)
This reverts commit 751c083f7d.

Our buildbots need to be upgraded to a newer version of the Android SDK.
2018-10-18 14:17:47 -07:00