34 Commits

Author SHA1 Message Date
Reid Baker
052b903e8e
[Android templates] Remove jetifier usage (#173431)
Fixes #173430

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-08-07 21:27:51 +00:00
Matt Boetger
c74cd04dbb
Add ktlint test for generated files from templates (#167378)
Creates a new test in analyze.dart that will generate kotlin files from
.kt.tmpl and .kts.tmpl files and then run ktlint on them.

Fixes: #166497 

## Pre-launch Checklist

- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-04-18 22:30:26 +00:00
Gray Mackall
f3d2204827
[Android] Add .cxx directories to app template .gitignore (#161069)
Fixes (but I still need to write the draft of the blog section so don't
autoclose github 🙏 ) https://github.com/flutter/flutter/issues/160372.

-Module templates [already exclude the entire `.android`
directory](d9b7e56646/packages/flutter_tools/templates/module/common/.gitignore.tmpl (L40)).
-Plugin templates [already exclude
`.cxx`](d9b7e56646/packages/flutter_tools/templates/plugin_shared/android.tmpl/.gitignore).

Modified the existing gitignores with
```
nl=$'\n'
sed -i'' -e '/GeneratedPluginRegistrant.java/a\'$'\n''.cxx/'"\\${nl}"'' $(find . -path \*android/.gitignore)
```
(which was probably not the best way)

Fun fact: apparently the `.gitignore` files (including the ones we copy
to the template apps) aren't indexed for search (the `.gitignore.tmpl`
are, but not the ones that we copy exactly [such as this
one](27ba2f2790/packages/flutter_tools/templates/app/android.tmpl/.gitignore)).

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Gray Mackall <mackall@google.com>
Co-authored-by: Reid Baker <hamilton.reid.baker@gmail.com>
Co-authored-by: Greg Price <gnprice@gmail.com>
2025-01-07 18:09:49 +00:00
Matan Lurey
0ffc4ce00e
Remove --template=skeleton and add a placeholder error message instead. (#160695)
Closes https://github.com/flutter/flutter/issues/160673.

Does the following:

- Renames `FlutterProjectType` to `FlutterTemplateType`; did some
enhanced enum cleanups while at it
- Creates a hierarchy of `RemovedFlutterTemplateType` from
`ParsedFlutterTemplateType`
- Removes the `skeleton` directory
- Merges `app_shared` back into `app` (no longer required now that
`skeleton` is removed)

Final cleanups are tracked in
https://github.com/flutter/flutter/issues/160692.

(Added @zanderso just to spot check this is what he meant by
https://github.com/flutter/flutter/issues/160673#issuecomment-2557742347)
2024-12-24 00:02:29 +00:00
Filip Hracek
76d5e62f42
Add a more complete app template for Flutter (skeleton) (#83530) 2021-06-28 15:26:04 -07:00
Pierre-Louis
ee875af067
Add Android keystore files to project gitignore (#80663) 2021-04-19 20:34:03 -07:00
Emmanuel Garcia
8dd0de7f58
Relands: Migrate template to Gradle 6.7 and AGP 4.1.0 (#71446) 2020-12-01 19:01:09 -08:00
Amir Hardon
7df04fdbd3
Revert "Migrate template to Gradle 6.7 and AGP 4.1.0 (#70808)" (#71096)
This reverts commit 8e73bab94c6051317c9fa4279a3733b6ee2a3ef2.
2020-11-23 12:27:36 -08:00
Emmanuel Garcia
8e73bab94c
Migrate template to Gradle 6.7 and AGP 4.1.0 (#70808) 2020-11-20 13:05:35 -08:00
Jason Simmons
88bf732ec5
Make the launch background drawable compatible with older Android API levels (#69255) 2020-11-02 16:08:03 -08:00
younghwan
634e461c4d
Apply darkmode style (#65182) 2020-09-17 15:32:05 -07:00
Herbert Poul
af2143412f
Remove FlutterApplication from app templates. (#64742) 2020-09-17 15:17:11 -07:00
Juyeong Lee
5ec7426be7
Remove enableR8=true from gradle.properties (#63339) 2020-08-14 10:26:03 -07:00
xster
8bd2e6585b
Remove v1 Android create templates (#61203) 2020-07-11 12:15:19 -07:00
Ian Hickson
6202476691
Remove license statements in template files. (#57268) 2020-06-15 09:30:05 -07:00
Jenn Magder
478d4c9c1a
Add Android private keystore to project gitignore (#57601) 2020-05-19 20:22:01 -07:00
Emmanuel Garcia
54dba4cd59
Don't import plugins that don't support android in settings.gradle (#54407) 2020-04-12 08:55:03 -07:00
Emmanuel Garcia
4049889d9e
Make --androidx flag a noop in flutter create (#52340) 2020-03-10 20:05:41 -07:00
Matt Carroll
def2205ee4
Android Project: Opt into splash behavior by default. (#49096) 2020-01-21 16:39:17 -08:00
Taufiq Rahman
35adf72c7f Add smallestScreenSize to android:configChanges in the Android manifest template (#43245) 2019-10-22 20:46:18 -07:00
Emmanuel Garcia
08c645b3b2
Test the Android embedding v2 (#42708)
* Test the Android embedding v2

* Update integration tests

* Split into shards
2019-10-16 21:26:10 -07:00
Emmanuel Garcia
9eaac9c414
Add smoke test for the new Android embedding (#42360)
* Add smoke test for the new Android embedding

* Update AndroidManifest.xml in app template

* Update test README.md

* Remove widget_test.dart

* Update pubspec.yaml

* Force GeneratedPluginRegistrant.java
2019-10-09 21:57:19 -07:00
Emmanuel Garcia
5961bcc505
Generate projects using the new Android embedding (#41666)
* Generate projects using the new Android embedding

* Add comment about usesNewEmbedding:true

* Feedback

* Rework way to detect new embedding in new apps
2019-10-04 06:23:03 -07:00
stuartmorgan
86c342eceb
Move iOS and Android gitignore rules into folders (#40864)
Rather than have a monolithic .gitignore covering all platforms in the
app template, have each platform folder contain its own rules.

Fixes #40793
2019-09-19 17:04:53 -07:00
Emmanuel Garcia
4d404da6df
Update Kotlin and Gradle version (#40181) 2019-09-13 19:37:07 -07:00
Emmanuel Garcia
2c857b9370
Enable R8 (#40453) 2019-09-13 19:06:40 -07:00
Josh Burton
d0e45a2369 Adds support for generating projects that use AndroidX support libraries (#31028) 2019-05-31 18:33:02 -07:00
Jonah Williams
f777db2b78
add uiMode to android:configChanges (#26896) 2019-01-22 10:37:22 -08:00
Jason Simmons
8efd6c1a21
Add a manifest for profile builds that enables INTERNET permission (#26450)
Profile builds need access to sockets in order to launch the Dart
observatory server.

This permission used to be enabled by default in all build types,
but was moved to a build type specific manifest in
88b853f7eb
2019-01-11 18:19:17 -08:00
Andrei Lesnitsky
88b853f7eb move INTERNET permission to debug/AndroidManifest.xml (#22139) 2019-01-11 07:45:49 -08: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 751c083f7db339d4bca782f2f4d8232c0d9cdc10.

Our buildbots need to be upgraded to a newer version of the Android SDK.
2018-10-18 14:17:47 -07:00
Sebastian Roth
751c083f7d newly created apps / plugins should use latest gradle dependencies (#22790) 2018-10-18 12:56:18 -07:00
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