diff --git a/DEPS b/DEPS
index 667e7c9..8d6d7fe 100644
--- a/DEPS
+++ b/DEPS
@@ -502,7 +502,7 @@
      'packages': [
        {
         'package': 'flutter/android/embedding_bundle',
-        'version': 'last_updated:2020-03-13T15:42:26-0700'
+        'version': 'last_updated:2020-05-20T01:36:16-0700'
        }
      ],
      'condition': 'download_android_deps',
diff --git a/shell/platform/android/embedding_bundle/build.gradle b/shell/platform/android/embedding_bundle/build.gradle
index a760822..c210e89 100644
--- a/shell/platform/android/embedding_bundle/build.gradle
+++ b/shell/platform/android/embedding_bundle/build.gradle
@@ -37,7 +37,7 @@
 }
 
 android {
-  compileSdkVersion 28
+  compileSdkVersion 29
 
   dependencies {
     embedding "androidx.annotation:annotation:1.1.0"
@@ -52,7 +52,7 @@
     // TODO(xster): remove these android-all compile time dependencies.
     // Use https://github.com/robolectric/robolectric/blob/master/robolectric/src/main/java/org/robolectric/plugins/LegacyDependencyResolver.java#L24
     // and specify them as runtime dependencies.
-    embeddingTesting "org.robolectric:android-all:8.1.0-robolectric-4611349"
+    embeddingTesting "org.robolectric:android-all:9-robolectric-4913185-2"
     // Get robolectric shadows for SDK=16 used by PlatformPluginTest.
     embeddingTesting_v16 "org.robolectric:android-all:4.1.2_r1-robolectric-r1"
     embeddingTesting "androidx.fragment:fragment-testing:1.1.0"
diff --git a/shell/platform/android/robolectric.properties b/shell/platform/android/robolectric.properties
index 7378b4e..a1bebb3 100644
--- a/shell/platform/android/robolectric.properties
+++ b/shell/platform/android/robolectric.properties
@@ -1,2 +1,4 @@
 # Match the value at shell/platform/android/embedding_bundle/build.gradle.
-sdk=29
+# TODO(https://github.com/flutter/flutter/issues/57655): figure out
+# what's wrong with sdk=29.
+sdk=28
diff --git a/shell/platform/android/test/io/flutter/embedding/android/FlutterViewTest.java b/shell/platform/android/test/io/flutter/embedding/android/FlutterViewTest.java
index 5b65673..cf0fdcc 100644
--- a/shell/platform/android/test/io/flutter/embedding/android/FlutterViewTest.java
+++ b/shell/platform/android/test/io/flutter/embedding/android/FlutterViewTest.java
@@ -42,7 +42,7 @@
 
 @Config(manifest = Config.NONE)
 @RunWith(RobolectricTestRunner.class)
-@TargetApi(29)
+@TargetApi(28)
 public class FlutterViewTest {
   @Mock FlutterJNI mockFlutterJni;
   @Mock FlutterLoader mockFlutterLoader;
diff --git a/shell/platform/android/test/io/flutter/plugin/editing/InputConnectionAdaptorTest.java b/shell/platform/android/test/io/flutter/plugin/editing/InputConnectionAdaptorTest.java
index 37ae918..bdf2d6b 100644
--- a/shell/platform/android/test/io/flutter/plugin/editing/InputConnectionAdaptorTest.java
+++ b/shell/platform/android/test/io/flutter/plugin/editing/InputConnectionAdaptorTest.java
@@ -34,7 +34,7 @@
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowClipboardManager;
 
-@Config(manifest = Config.NONE, sdk = 27, shadows = ShadowClipboardManager.class)
+@Config(manifest = Config.NONE, shadows = ShadowClipboardManager.class)
 @RunWith(RobolectricTestRunner.class)
 public class InputConnectionAdaptorTest {
   @Test
diff --git a/shell/platform/android/test/io/flutter/plugin/editing/TextInputPluginTest.java b/shell/platform/android/test/io/flutter/plugin/editing/TextInputPluginTest.java
index 3719613..f12daf4 100644
--- a/shell/platform/android/test/io/flutter/plugin/editing/TextInputPluginTest.java
+++ b/shell/platform/android/test/io/flutter/plugin/editing/TextInputPluginTest.java
@@ -52,7 +52,7 @@
 import org.robolectric.shadows.ShadowBuild;
 import org.robolectric.shadows.ShadowInputMethodManager;
 
-@Config(manifest = Config.NONE, shadows = TextInputPluginTest.TestImm.class, sdk = 27)
+@Config(manifest = Config.NONE, shadows = TextInputPluginTest.TestImm.class)
 @RunWith(RobolectricTestRunner.class)
 public class TextInputPluginTest {
   // Verifies the method and arguments for a captured method call.
diff --git a/shell/platform/android/test/io/flutter/plugin/platform/SingleViewPresentationTest.java b/shell/platform/android/test/io/flutter/plugin/platform/SingleViewPresentationTest.java
index f38d916..3ef50b9 100644
--- a/shell/platform/android/test/io/flutter/plugin/platform/SingleViewPresentationTest.java
+++ b/shell/platform/android/test/io/flutter/plugin/platform/SingleViewPresentationTest.java
@@ -21,10 +21,9 @@
 
 @Config(
     manifest = Config.NONE,
-    shadows = {ShadowInputMethodManager.class, ShadowDisplayManager.class, ShadowDisplay.class},
-    sdk = 27)
+    shadows = {ShadowInputMethodManager.class, ShadowDisplayManager.class, ShadowDisplay.class})
 @RunWith(RobolectricTestRunner.class)
-@TargetApi(27)
+@TargetApi(28)
 public class SingleViewPresentationTest {
   @Test
   public void returnsOuterContextInputMethodManager() {
