From 3c4e89f50c6fbe6d69b1cc22f888c93dd84cd9cd Mon Sep 17 00:00:00 2001 From: Yugue Date: Wed, 15 Sep 2021 17:21:10 -0400 Subject: [PATCH 1/5] 'Update Dart SDK to 3300f32fdc5432f40bc00f4179529cbd7449c93a' --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 483a9969ebae7..367882647b73a 100644 --- a/DEPS +++ b/DEPS @@ -35,7 +35,7 @@ vars = { # Dart is: https://github.com/dart-lang/sdk/blob/master/DEPS. # You can use //tools/dart/create_updated_flutter_deps.py to produce # updated revision list of existing dependencies. - 'dart_revision': '4c8a4f0d7ad055fa7dea5e80862cd2074f4454d3', + 'dart_revision': '3300f32fdc5432f40bc00f4179529cbd7449c93a', # WARNING: DO NOT EDIT MANUALLY # The lines between blank lines above and below are generated by a script. See create_updated_flutter_deps.py From 083049e6cae311910c6a6619a6681b7eba4035b4 Mon Sep 17 00:00:00 2001 From: Emmanuel Garcia Date: Mon, 13 Sep 2021 15:31:54 -0700 Subject: [PATCH 2/5] Don't use rFD in pre-Q versions (#28593) --- .../embedding/android/FlutterActivity.java | 11 +++-- .../android/FlutterActivityTest.java | 44 +++++++++++++++++++ 2 files changed, 51 insertions(+), 4 deletions(-) diff --git a/shell/platform/android/io/flutter/embedding/android/FlutterActivity.java b/shell/platform/android/io/flutter/embedding/android/FlutterActivity.java index 16497674240de..bed4a8bc5f9bd 100644 --- a/shell/platform/android/io/flutter/embedding/android/FlutterActivity.java +++ b/shell/platform/android/io/flutter/embedding/android/FlutterActivity.java @@ -1054,10 +1054,13 @@ public void onFlutterTextureViewCreated(@NonNull FlutterTextureView flutterTextu @Override public void onFlutterUiDisplayed() { // Notifies Android that we're fully drawn so that performance metrics can be collected by - // Flutter performance tests. - // This was supported in KitKat (API 19), but has a bug around requiring - // permissions. See https://github.com/flutter/flutter/issues/46172 - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + // Flutter performance tests. A few considerations: + // * reportFullyDrawn was supported in KitKat (API 19), but has a bug around requiring + // permissions in some Android versions. + // * reportFullyDrawn behavior isn't tested on pre-Q versions. + // See https://github.com/flutter/flutter/issues/46172, and + // https://github.com/flutter/flutter/issues/88767. + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { reportFullyDrawn(); } } diff --git a/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java b/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java index b88460b3cb423..fc9609e4b3326 100644 --- a/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java +++ b/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java @@ -20,6 +20,7 @@ import android.content.Intent; import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; +import android.os.Build; import android.os.Bundle; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -436,6 +437,32 @@ public void itWithMetadataWithoutSplashScreenResourceKeyDoesNotProvideSplashScre assertNull(splashScreen); } + @Test + public void fullyDrawn() { + Intent intent = + FlutterActivityWithReportFullyDrawn.createDefaultIntent(RuntimeEnvironment.application); + ActivityController activityController = + Robolectric.buildActivity(FlutterActivityWithReportFullyDrawn.class, intent); + FlutterActivityWithReportFullyDrawn flutterActivity = activityController.get(); + + // See https://github.com/flutter/flutter/issues/46172, and + // https://github.com/flutter/flutter/issues/88767. + for (int version = Build.VERSION_CODES.JELLY_BEAN; version < Build.VERSION_CODES.Q; version++) { + TestUtils.setApiVersion(version); + flutterActivity.onFlutterUiDisplayed(); + assertFalse( + "reportFullyDrawn isn't used in API level " + version, flutterActivity.isFullyDrawn()); + } + + for (int version = Build.VERSION_CODES.Q; version < Build.VERSION_CODES.S; version++) { + TestUtils.setApiVersion(version); + flutterActivity.onFlutterUiDisplayed(); + assertTrue( + "reportFullyDrawn is used in API level " + version, flutterActivity.isFullyDrawn()); + flutterActivity.resetFullyDrawn(); + } + } + static class FlutterActivityWithProvidedEngine extends FlutterActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -475,6 +502,23 @@ public RenderMode getRenderMode() { } } + private static class FlutterActivityWithReportFullyDrawn extends FlutterActivity { + private boolean fullyDrawn = false; + + @Override + public void reportFullyDrawn() { + fullyDrawn = true; + } + + public boolean isFullyDrawn() { + return fullyDrawn; + } + + public void resetFullyDrawn() { + fullyDrawn = false; + } + } + private static final class FakeFlutterPlugin implements FlutterPlugin, ActivityAware, From 1350279832122367d0d9542004d49a178a7efa79 Mon Sep 17 00:00:00 2001 From: Yugue Date: Thu, 16 Sep 2021 14:03:42 -0400 Subject: [PATCH 3/5] updated 3rd party license number --- ci/licenses_golden/licenses_third_party | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/licenses_golden/licenses_third_party b/ci/licenses_golden/licenses_third_party index 3f26332fc7f6e..5cfe7658679a6 100644 --- a/ci/licenses_golden/licenses_third_party +++ b/ci/licenses_golden/licenses_third_party @@ -1,4 +1,4 @@ -Signature: 988f1584a445473114bc2516f591f26b +Signature: 433ebc3230469097aefe40d80a56dd3f UNUSED LICENSES: From ef027434c4b7e8d55b8fa45685daf8991da91f3e Mon Sep 17 00:00:00 2001 From: Christopher Fujino Date: Thu, 16 Sep 2021 12:42:09 -0700 Subject: [PATCH 4/5] hard-code Build.VERSION_CODE.S --- .../test/io/flutter/embedding/android/FlutterActivityTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java b/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java index fc9609e4b3326..7eea699d8b41b 100644 --- a/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java +++ b/shell/platform/android/test/io/flutter/embedding/android/FlutterActivityTest.java @@ -454,7 +454,8 @@ public void fullyDrawn() { "reportFullyDrawn isn't used in API level " + version, flutterActivity.isFullyDrawn()); } - for (int version = Build.VERSION_CODES.Q; version < Build.VERSION_CODES.S; version++) { + final int versionCodeS = 31; + for (int version = Build.VERSION_CODES.Q; version < versionCodeS; version++) { TestUtils.setApiVersion(version); flutterActivity.onFlutterUiDisplayed(); assertTrue( From b98135c0f3792e917450a5b9a8cb7ec5302c2146 Mon Sep 17 00:00:00 2001 From: keyonghan <54558023+keyonghan@users.noreply.github.com> Date: Mon, 13 Sep 2021 11:32:02 -0700 Subject: [PATCH 5/5] renew cirrus key (#28584) --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index da0e3ed875472..a4fc4a3145a34 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -1,4 +1,4 @@ -gcp_credentials: ENCRYPTED[!0e63b52bd7e4fda1cd7b7bf2b4fe515a27fadbeaced01f5ad8b699b81d3611ed64c5d3271bcd8426dd914ef41cba48a0!] +gcp_credentials: ENCRYPTED[!48cff44dd32e9cc412d4d381c7fe68d373ca04cf2639f8192d21cb1a9ab5e21129651423a1cf88f3fd7fe2125c1cabd9!] # LINUX task: