Commit Graph

23 Commits

Author SHA1 Message Date
Stanislav Baranov aa2b287cbf Reland #7777 with proper LICENSE (#7888) 2019-02-21 13:45:24 -08:00
Stanislav Baranov 5141680287 Revert "Support for binary decompression of dynamic patches. (#7777)" (#7853)
This reverts commit d48de7a3ec.
2019-02-15 17:07:06 -08:00
Stanislav Baranov d48de7a3ec Support for binary decompression of dynamic patches. (#7777) 2019-02-11 16:56:33 -08:00
Stanislav Baranov 5401803f67 Validate dynamic patches before attempting to install (#7496)
This change adds explicit validation of dynamic patches in all places
where they're used, instead of only validating it in some places which
wasn't as reliable because some of the code paths were missed.

This change also moves utility functions that deal with validating
patches from ResourceExtractor to ResourceUpdater, to make them
available as API for other places in code that need this validation.
2019-01-15 18:09:25 -08:00
Stanislav Baranov 6071286ef1 Download dynamic patch to separate file, then rename it to install. (#7428)
This fixes potential race condition when patch gets downloaded on top
of zip file that's currently in active use by resource extractor and/or
asset manager. This change is necessary since download can happen in
the background while normal application operations are in progress.
2019-01-09 16:26:24 -08:00
Chris Bracken 20d70d2bf4 Eliminate unused import of ZipException (#7429)
Use of this class was eliminated in https://github.com/flutter/engine/pull/7398.
2019-01-09 15:08:43 -08:00
Stanislav Baranov 844d27cb3c Refactor dynamic patching to use clearer naming and structure. (#7426)
This is a no-op change, except for fixing a bug where download task
reference wasn't cleared after download was completed.

This change also removes call to output stream flush(), which is not
necessary according to Java spec.

The rest of the change deals with requiring the code to work directly
with ResourceUpdater object instead of having FlutterMain be a facade
that forwards some of ResourceUpdater's methods. This simplifies the
other (more essential) upcoming changes that will be landing in the
followings few PRs.
2019-01-09 14:21:36 -08:00
Todd Volkert 4487d392da Replace Java code with equivalent, more concise code. (#7398) 2019-01-07 11:28:00 -08:00
Stanislav Baranov 8cca33aea8 Give more control over when dynamic patches get downloaded and installed. (#7327)
This change introduces manifest properties that control when dynamic patches are downloaded and installed in the application lifecycle.

Application developer can choose whether between install on restart, install on resume, or immediate forced install of dynamic patches.
2019-01-02 10:40:37 -08:00
Stanislav Baranov 6f763fbad7 Minor refactoring of dynamic patching code. (#7325)
Minor refactoring of dynamic patching code.

- Changes naming of manifest properties to be consistent with documentation.
- Moves methods from inner class to outer class to make them more reusable.
2018-12-28 13:23:38 -08:00
Stanislav Baranov 732ea7669c Allow dynamic patches without a patch number. (#7309)
Unique patch numbers are mainly useful for canary and A-B testing, but otherwise complicate things and can now be omitted.

Also, always append .zip to patch download URL. This obviates the need to configure redirects on the server when not using patch numbers.
2018-12-27 11:56:56 -08:00
Jason Simmons 41222d0555 Update usage of some Android APIs that are deprecated in API level 28 (#7261) 2018-12-19 17:39:53 -08:00
Stanislav Baranov 9edb4f72b9 Update dynamic patching terminilogy to match that of the flutter tool (#7248) 2018-12-19 10:31:54 -08:00
Todd Volkert f79f7f6312 Allow inferred types using diamond syntax (#7237) 2018-12-17 16:35:10 -08:00
Todd Volkert 951edf3e11 Simplify nested try-with-resources statements (#7239) 2018-12-17 16:34:54 -08:00
Stanislav Baranov 18a4e33c2a Downloading and installation of dynamic updates on Android (#7207) 2018-12-13 10:17:37 -08:00
Michael Goderbauer 70a1106b50 Unify copyright lines (#6757) 2018-11-07 12:24:35 -08:00
谢然 05aac0f270 fix ResourceExtractor npe. (#6461) 2018-10-12 09:56:00 -07:00
amirh 51785d244d Remove unused Java imports (#5663) 2018-07-03 09:21:03 -07:00
Sarah Zakarias a00f8e8bc0 Read assets out of APK on Android (#4742) 2018-03-05 14:09:45 +01:00
Sarah Zakarias 4cbe26dd37 Handle Flutter assets outside FLX (#4343) 2017-12-13 10:55:24 +01:00
Chinmay Garde 1c07ea530f Remove uses of //base from all //flutter projects and replace them with //fml variants. (#3492) 2017-03-22 15:42:51 -07:00
Chinmay Garde 9eb446e0d5 Move shell to //flutter and split shell/BUILD.gn into smaller pieces for each subcomponent. (#3053)
* Namespaces have been updated to reflect the move from //flutter/sky/shell to //flutter/shell.
* shell/BUILD.gn file has been split into smaller GN files for each subcomponent of the shell (common, GPU, diagnostic, testing).
* GN dependencies have been rewritten to stop exposing common shell dependencies as public. Duplicates have also been removed.
* GPU subcomponent has been updated make it more suitable for Vulkan integration.
* The GLFW backend has been resurrected.
2016-09-23 15:33:25 -07:00