Flutter AOT builds can be done on Android using .so files (instead of
separate instruction/data snapshots) using the `--build-shared-library`
flag.
Running from .so files stopped working after the engine refactoring in
58e84c8bf0, which this CL restores.
Issue https://github.com/flutter/flutter/issues/17236
This causes Skia to fall back to the ES2 shading language when the GL
driver doesn't clearly communicate that it supports the ES3 external
image extension. Doing so ensures that video playback (which relies on
external images) works on many more devices.
* Move the handling of delegating AppDelegate callback out of FlutterAppDelegate.
Also moves the plugin registry to FlutterViewController. So each view-controller will handle its
own plugins.
This is intended to simplify including one or more Flutter views in an existing iOS app and giving
more precise control of plugin registration.
Fixes: https://github.com/flutter/flutter/issues/16539
* formatting
* Update license golden file
iOS does not allow usage of OpenGL ES APIs when the app has been moved to the
background. With this change, the shell will wait until pending IO thread tasks
complete and the Skia unref queue is drained before proceeding with shutdown.
See https://github.com/flutter/flutter/issues/17511
The Fuchsia bots seem to reference this target to figure out the root_out_directory https://fuchsia.googlesource.com/build/+/master/dart/dart_test.gni#67. Note that the presence of the flutter_tester binary location itself is not depended on. Instead, the target is used to infer the directory containing the flutter_tester after a build.
Patching the //build repository in Fuchsia would mean making the tree red till a //topaz patch lands. To avoid doing this, we add back the missing reference.
This allows applications to start a Flutter engine instance during app startup
and keep it running throughout the app process' lifetime.
FlutterActivity subclasses can override createFlutterNativeView to provide a
preinitialized FlutterNativeView instance and override retainFlutterNativeView
to signal that the FlutterNativeView should be kept alive when the activity
is destroyed.
The mobile shells all use the same isolate snapshot. This is also the snapshot used by the service isolate. This works towards a world where the isolate snapshot is no longer a member variable of the DartVM instance. Instead, all snapshots must be specified in the run configuration. For now, the new `Shell::Create` overload will only be used by Fuchsia till I refactor `dart_vm.cc`.
There are no API updates to the mobile shells.
* Revert "Roll dart sdk to e6d7d67f4b35556805dd083fed15bf3ed41f7e33. (#5165)"
This reverts commit 9e4c5d0e1f9daf0c46fdc7e5d1e81ce9c36b65c4.
* Revert "Enables system chrome customization on Android M/O and greater (#5112)"
This reverts commit f2db5dfd30f12407acab57f04acc8af7c6158891.
The APKAssetProvider will hold a reference to its Java peer
(see ac682632d7)
After dropping this reference, the UI thread must detach from JNI before exiting.
* Added handleEventsForBackgroundURLSession and
performFetchWithCompletionHandler handlers in FlutterAppDelegate to
allow for plugins to perform background downloads and fetch small
amounts of data opportunistically.