1. 21 Nov, 2017 1 commit
    • Martin Kustermann's avatar
      Add support for NDK discovery and add --prefer-shared-library option (#12788) · 545ec9ef
      Martin Kustermann authored
      * Add support for NDK discovery and add --prefer-shared-library option
      
      We would like to be able to use native tools (e.g. simpleperf, gdb) with
      precompiled flutter apps.  The native tools work much better with *.so
      files instead of the custom formats the Dart VM uses by default.
      
      The reason for using blobs / instruction snapshots is that we do not
      want to force flutter users to install the Android NDK.
      
      This CL adds a `--prefer-shared-library` flag to e.g. `flutter build
      apk` which will use the NDK compiler (if available) to turn the
      precompiled app assembly file to an `*.so` file.  If the NDK compiler is
      not available it will default to the default behavior.
      
      * Rebase, add test for NDK detection, augment flutter.gradle with @Input for flag
      
      * Use InMemoryFileSystem for test
      
      * Remove unused import
      
      * Address some analyzer warnings
      545ec9ef
  2. 18 Oct, 2017 1 commit
  3. 03 Oct, 2017 1 commit
    • Alexander Markov's avatar
      Add hidden options --extra-front-end-options and --extra-gen-snapshot-options... · 7153dea2
      Alexander Markov authored
      Add hidden options --extra-front-end-options and --extra-gen-snapshot-options to flutter tool (#12219)
      
      This CL introduces 2 hidden options to 'flutter build aot' and 'flutter run' for passing arbitrary arguments to front-end server and to gen_snapshot tool when building and running flutter app in --profile or --release modes.
      
      The ability to pass arbitrary options simplifies various experiments, as it removes the need to change defaults and rebuild flutter engine for every tested configuration.
      7153dea2
  4. 12 Sep, 2017 1 commit
  5. 31 Aug, 2017 1 commit
  6. 24 Aug, 2017 1 commit
  7. 04 Aug, 2017 1 commit
  8. 31 Jul, 2017 1 commit
  9. 16 Jun, 2017 1 commit
  10. 22 May, 2017 1 commit
  11. 05 May, 2017 1 commit
    • Jakob Andersen's avatar
      Improve Android builds. (#9801) · 6b54137a
      Jakob Andersen authored
      Eagerly generate local.properties, and always update the flutter.sdk
      setting in it, in case FLUTTER_ROOT has changed.
      
      Fixes #8365.
      Fixes #9716 - at least the specific issue reported. My Android Studio
      still complains about Gradle versions - it ships with v3.2, but requires
      v3.3...
      
      Add a 'generate dependencies' task to the Gradle build, which checks if
      the snapshot dependencies file exists, and runs an extra build before
      the actual FlutterTask if it doesn't. This makes the first build slower,
      but sub-sequent builds (without source changes) much faster.
      
      Fixes #9717.
      6b54137a
  12. 31 Mar, 2017 1 commit
  13. 29 Mar, 2017 2 commits
  14. 28 Mar, 2017 3 commits
  15. 27 Mar, 2017 1 commit
  16. 23 Mar, 2017 2 commits
  17. 22 Mar, 2017 1 commit
  18. 21 Mar, 2017 1 commit
  19. 20 Mar, 2017 1 commit
    • Jakob Andersen's avatar
      Remove legacy .apk build. (#8793) · 7b2367ed
      Jakob Andersen authored
      * Remove legacy .apk build.
      
      Print out an error message telling the user to upgrade the project if
      it's not Gradle-based. Removed all the obvious traces of the legacy
      build.
      
      Added support for Dart VM kernel snapshots in Gradle builds.
      
      Fixed Android installs to verify that the app is actually installed, and
      not just rely on the presence of the .sha1 file.
      7b2367ed
  20. 15 Mar, 2017 1 commit
    • Jakob Andersen's avatar
      Put Gradle output in build/ (#8759) · 1457f3db
      Jakob Andersen authored
      Changed the default build output directory in the new project template
      to build/, instead of android/build/ and android/app/build/.
      
      Updated tools to ask the Gradle scripts what the build directory is,
      since this is configurable in the build scripts, and we need to know
      where the build output actually is.
      
      Silenced output from 'flutter build aot' when invoked from Gradle, since
      the output was confusing in this case.
      
      Fixes #8723
      Fixes #8656
      Fixes #8138
      1457f3db
  21. 14 Mar, 2017 1 commit
    • Jakob Andersen's avatar
      Use snapshot's .d file as source inputs in Gradle build. (#8756) · 9c6ffc82
      Jakob Andersen authored
      * Use snapshot's .d file as source inputs in Gradle build.
      
      If we don't yet have a .d file (first build), fall back to using the
      .dart files in the current directory. This enables us to detect changes
      in dependent source files (Flutter framework, packages outside the
      source directory, etc.), and re-generate the snapshots as needed.
      
      Unfortunately, Gradle requires knowing the source files before executing
      the task, and can't update them after building, so Gradle considers the
      second build to be out-of-date (because it has more input files than the
      first build). Sub-sequent builds have the correct dependency
      information, and will be skipped if the source files haven't changed.
      
      Also added a dependency on gen_snapshot. The snapshot ABI isn't stable,
      so we need to re-generate the snapshots when we roll the Dart SDK
      dependency.
      
      Fixes #8315
      Fixes #8687
      Fixes #8607
      9c6ffc82
  22. 23 Feb, 2017 3 commits
  23. 16 Feb, 2017 1 commit
  24. 15 Feb, 2017 1 commit
    • Jakob Andersen's avatar
      Don't include Roboto fonts in Gradle builds. (#8169) · 77e53016
      Jakob Andersen authored
      The "old" APK build did not include Roboto fonts, but the new
      Gradle-based build did. This is due to `flutter build flx` defaulting to
      include the fonts, where the old `flutter build apk` defaulted to NOT
      include them.
      
      So let's change the Gradle build to also not include Roboto fonts.
      
      Fixes #8149
      77e53016
  25. 10 Feb, 2017 1 commit
    • Jakob Andersen's avatar
      Make new project template gradle-based for Android. (#7902) · b246c5e7
      Jakob Andersen authored
      * Make new project template gradle-based for Android.
      
      With this change, the 'new project' template uses the same gradle-based build for Android as the hello_services example. This has some implications on build performance, since we're now building a complete Android app instead of just combining a pre-compiled .dex with the Flutter assets.
      
      The very first build is a little over 2x slower, since it needs to download gradle and build the build scripts before getting to the actual code. Subsequent builds with changes to the code are comparable to the old builds. Null builds are faster. Enabling the gradle daemon speeds up subsequent builds by around 5s.
      
      * Move Flutter Gradle plugin to Flutter root.
      b246c5e7
  26. 31 Jan, 2017 1 commit
  27. 23 Jan, 2017 1 commit
  28. 07 Jun, 2016 1 commit
  29. 06 Jun, 2016 1 commit
  30. 03 Jun, 2016 1 commit
  31. 28 May, 2016 1 commit
  32. 12 Apr, 2016 1 commit
  33. 23 Mar, 2016 1 commit
  34. 19 Mar, 2016 1 commit