diff --git a/packages/android_alarm_manager/CHANGELOG.md b/packages/android_alarm_manager/CHANGELOG.md
index 2c067a3..7d90afb 100644
--- a/packages/android_alarm_manager/CHANGELOG.md
+++ b/packages/android_alarm_manager/CHANGELOG.md
@@ -3,6 +3,7 @@
 * Remove support for the V1 Android embedding.
 * Updated Android lint settings.
 * Removed `-Werror` in Android builds.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 2.0.2
 
diff --git a/packages/android_alarm_manager/example/android/app/build.gradle b/packages/android_alarm_manager/example/android/app/build.gradle
index 9722ec2..4efe095 100644
--- a/packages/android_alarm_manager/example/android/app/build.gradle
+++ b/packages/android_alarm_manager/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/android_intent/CHANGELOG.md b/packages/android_intent/CHANGELOG.md
index c30b483..7bad13f 100644
--- a/packages/android_intent/CHANGELOG.md
+++ b/packages/android_intent/CHANGELOG.md
@@ -4,6 +4,7 @@
 * Updated Android lint settings.
 * Specify Java 8 for Android build.
 * Removed `-Werror` in Android builds.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 2.0.2
 
diff --git a/packages/android_intent/example/android/app/build.gradle b/packages/android_intent/example/android/app/build.gradle
index a309dc2..3591be7 100644
--- a/packages/android_intent/example/android/app/build.gradle
+++ b/packages/android_intent/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/battery/battery/CHANGELOG.md b/packages/battery/battery/CHANGELOG.md
index d78c5d3..f55da97 100644
--- a/packages/battery/battery/CHANGELOG.md
+++ b/packages/battery/battery/CHANGELOG.md
@@ -2,6 +2,7 @@
 
 * Remove references to the Android v1 embedding.
 * Updated Android lint settings.
+* Updates example app Android compileSdkVersion to 31.
 * Recreated Android example from current template.
 
 ## 2.0.3
diff --git a/packages/battery/battery/example/android/app/build.gradle b/packages/battery/battery/example/android/app/build.gradle
index 4fcd6ba..1b529a5 100644
--- a/packages/battery/battery/example/android/app/build.gradle
+++ b/packages/battery/battery/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/connectivity/connectivity/CHANGELOG.md b/packages/connectivity/connectivity/CHANGELOG.md
index 81d2eff..ce65faf 100644
--- a/packages/connectivity/connectivity/CHANGELOG.md
+++ b/packages/connectivity/connectivity/CHANGELOG.md
@@ -4,6 +4,7 @@
 * Updated Android lint settings.
 * Specify Java 8 for Android build.
 * Removed `-Werror` in Android builds.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 3.0.6
 
diff --git a/packages/connectivity/connectivity/example/android/app/build.gradle b/packages/connectivity/connectivity/example/android/app/build.gradle
index 99e3605..209178f 100644
--- a/packages/connectivity/connectivity/example/android/app/build.gradle
+++ b/packages/connectivity/connectivity/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/device_info/device_info/CHANGELOG.md b/packages/device_info/device_info/CHANGELOG.md
index cdcb906..a9c3b7a 100644
--- a/packages/device_info/device_info/CHANGELOG.md
+++ b/packages/device_info/device_info/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.0.3
 
 * Remove references to the Android V1 embedding.
diff --git a/packages/device_info/device_info/example/android/app/build.gradle b/packages/device_info/device_info/example/android/app/build.gradle
index eb0c628..9371207 100644
--- a/packages/device_info/device_info/example/android/app/build.gradle
+++ b/packages/device_info/device_info/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/espresso/CHANGELOG.md b/packages/espresso/CHANGELOG.md
index 88976c8..c2afa54 100644
--- a/packages/espresso/CHANGELOG.md
+++ b/packages/espresso/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 0.1.0+4
 
 * Updated Android lint settings.
diff --git a/packages/espresso/example/android/app/build.gradle b/packages/espresso/example/android/app/build.gradle
index 6def13f..5ed5eed 100644
--- a/packages/espresso/example/android/app/build.gradle
+++ b/packages/espresso/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/flutter_plugin_android_lifecycle/CHANGELOG.md b/packages/flutter_plugin_android_lifecycle/CHANGELOG.md
index 27cca01..414cf8e 100644
--- a/packages/flutter_plugin_android_lifecycle/CHANGELOG.md
+++ b/packages/flutter_plugin_android_lifecycle/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.0.4
 
 * Updated Android lint settings.
diff --git a/packages/flutter_plugin_android_lifecycle/example/android/app/build.gradle b/packages/flutter_plugin_android_lifecycle/example/android/app/build.gradle
index da10d61..bc87d03 100644
--- a/packages/flutter_plugin_android_lifecycle/example/android/app/build.gradle
+++ b/packages/flutter_plugin_android_lifecycle/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md
index 1171dcb..b5e739a 100644
--- a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md
+++ b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.1.1
 
 * Suppresses unchecked cast warning.
diff --git a/packages/google_maps_flutter/google_maps_flutter/example/android/app/build.gradle b/packages/google_maps_flutter/google_maps_flutter/example/android/app/build.gradle
index d850810..e46f18b 100644
--- a/packages/google_maps_flutter/google_maps_flutter/example/android/app/build.gradle
+++ b/packages/google_maps_flutter/google_maps_flutter/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/google_sign_in/google_sign_in/CHANGELOG.md b/packages/google_sign_in/google_sign_in/CHANGELOG.md
index b16b5f9..739983b 100644
--- a/packages/google_sign_in/google_sign_in/CHANGELOG.md
+++ b/packages/google_sign_in/google_sign_in/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 5.2.1
 
  Change the placeholder of the GoogleUserCircleAvatar to a transparent image.
diff --git a/packages/google_sign_in/google_sign_in/example/android/app/build.gradle b/packages/google_sign_in/google_sign_in/example/android/app/build.gradle
index 5d574a2..8ac99fe 100644
--- a/packages/google_sign_in/google_sign_in/example/android/app/build.gradle
+++ b/packages/google_sign_in/google_sign_in/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/image_picker/image_picker/CHANGELOG.md b/packages/image_picker/image_picker/CHANGELOG.md
index 23871aa..688cee3 100644
--- a/packages/image_picker/image_picker/CHANGELOG.md
+++ b/packages/image_picker/image_picker/CHANGELOG.md
@@ -1,5 +1,6 @@
 ## NEXT
 
+* Updates example app Android compileSdkVersion to 31.
 * Fix iOS RunnerUITests search paths.
 
 ## 0.8.4+4
diff --git a/packages/image_picker/image_picker/example/android/app/build.gradle b/packages/image_picker/image_picker/example/android/app/build.gradle
index f7fbaae..e73e3fe 100755
--- a/packages/image_picker/image_picker/example/android/app/build.gradle
+++ b/packages/image_picker/image_picker/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
     testOptions.unitTests.includeAndroidResources = true
 
     lintOptions {
diff --git a/packages/in_app_purchase/in_app_purchase/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase/CHANGELOG.md
index b8fc7f2..6b615fe 100644
--- a/packages/in_app_purchase/in_app_purchase/CHANGELOG.md
+++ b/packages/in_app_purchase/in_app_purchase/CHANGELOG.md
@@ -1,5 +1,7 @@
 ## NEXT
 
+* Updates example app Android compileSdkVersion to 31.
+
 * **BREAKING CHANGES**:
   * Renames `in_app_purchase_ios` to `in_app_purchase_storekit`.
   * Renames `InAppPurchaseIosPlatform` to `InAppPurchaseStoreKitPlatform`.
diff --git a/packages/in_app_purchase/in_app_purchase/example/android/app/build.gradle b/packages/in_app_purchase/in_app_purchase/example/android/app/build.gradle
index c958046..772b883 100644
--- a/packages/in_app_purchase/in_app_purchase/example/android/app/build.gradle
+++ b/packages/in_app_purchase/in_app_purchase/example/android/app/build.gradle
@@ -63,7 +63,7 @@
         }
     }
 
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/in_app_purchase/in_app_purchase_android/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase_android/CHANGELOG.md
index 78aa8db..7724dd3 100644
--- a/packages/in_app_purchase/in_app_purchase_android/CHANGELOG.md
+++ b/packages/in_app_purchase/in_app_purchase_android/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 0.2.0
 
 * BREAKING CHANGE : Refactor to handle new `PurchaseStatus` named `canceled`. This means developers
diff --git a/packages/in_app_purchase/in_app_purchase_android/example/android/app/build.gradle b/packages/in_app_purchase/in_app_purchase_android/example/android/app/build.gradle
index 373d4a8..8ddcaf7 100644
--- a/packages/in_app_purchase/in_app_purchase_android/example/android/app/build.gradle
+++ b/packages/in_app_purchase/in_app_purchase_android/example/android/app/build.gradle
@@ -63,7 +63,7 @@
         }
     }
 
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/local_auth/CHANGELOG.md b/packages/local_auth/CHANGELOG.md
index f4129f7..a824d8a 100644
--- a/packages/local_auth/CHANGELOG.md
+++ b/packages/local_auth/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 1.1.8
 
 * Update minimum Flutter SDK to 2.5 and iOS deployment target to 9.0.
diff --git a/packages/local_auth/example/android/app/build.gradle b/packages/local_auth/example/android/app/build.gradle
index 34b3fe2..d1cef4b 100644
--- a/packages/local_auth/example/android/app/build.gradle
+++ b/packages/local_auth/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/package_info/CHANGELOG.md b/packages/package_info/CHANGELOG.md
index 7abe1c2..3cf6751 100644
--- a/packages/package_info/CHANGELOG.md
+++ b/packages/package_info/CHANGELOG.md
@@ -2,7 +2,7 @@
 
 * Remove references to the Android v1 embedding.
 * Updated Android lint settings.
-* Update Android compileSdkVersion to 30.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 2.0.2
 
diff --git a/packages/package_info/example/android/app/build.gradle b/packages/package_info/example/android/app/build.gradle
index 0c55bdb..60fc741 100644
--- a/packages/package_info/example/android/app/build.gradle
+++ b/packages/package_info/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 30
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/path_provider/path_provider/CHANGELOG.md b/packages/path_provider/path_provider/CHANGELOG.md
index 28c2332..237815d 100644
--- a/packages/path_provider/path_provider/CHANGELOG.md
+++ b/packages/path_provider/path_provider/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.0.7
 
 * Moved Android and iOS implementations to federated packages.
diff --git a/packages/path_provider/path_provider/example/android/app/build.gradle b/packages/path_provider/path_provider/example/android/app/build.gradle
index e7f1bfb..6ef1396 100644
--- a/packages/path_provider/path_provider/example/android/app/build.gradle
+++ b/packages/path_provider/path_provider/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/path_provider/path_provider_android/CHANGELOG.md b/packages/path_provider/path_provider_android/CHANGELOG.md
index eb155d1..ed14cb7 100644
--- a/packages/path_provider/path_provider_android/CHANGELOG.md
+++ b/packages/path_provider/path_provider_android/CHANGELOG.md
@@ -1,3 +1,8 @@
+## 2.0.8
+
+* Updates example app Android compileSdkVersion to 31.
+* Fixes typing build warning.
+
 ## 2.0.7
 
 * Fixes link in README.
diff --git a/packages/path_provider/path_provider_android/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java b/packages/path_provider/path_provider_android/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java
index 983f6ff..3ff2416 100644
--- a/packages/path_provider/path_provider_android/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java
+++ b/packages/path_provider/path_provider_android/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java
@@ -243,7 +243,7 @@
   }
 
   private List<String> getPathProviderExternalCacheDirectories() {
-    final List<String> paths = new ArrayList<>();
+    final List<String> paths = new ArrayList<String>();
 
     if (VERSION.SDK_INT >= VERSION_CODES.KITKAT) {
       for (File dir : context.getExternalCacheDirs()) {
@@ -262,7 +262,7 @@
   }
 
   private List<String> getPathProviderExternalStorageDirectories(String type) {
-    final List<String> paths = new ArrayList<>();
+    final List<String> paths = new ArrayList<String>();
 
     if (VERSION.SDK_INT >= VERSION_CODES.KITKAT) {
       for (File dir : context.getExternalFilesDirs(type)) {
diff --git a/packages/path_provider/path_provider_android/example/android/app/build.gradle b/packages/path_provider/path_provider_android/example/android/app/build.gradle
index e7f1bfb..6ef1396 100644
--- a/packages/path_provider/path_provider_android/example/android/app/build.gradle
+++ b/packages/path_provider/path_provider_android/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/path_provider/path_provider_android/pubspec.yaml b/packages/path_provider/path_provider_android/pubspec.yaml
index 2fd72ef..2275316 100644
--- a/packages/path_provider/path_provider_android/pubspec.yaml
+++ b/packages/path_provider/path_provider_android/pubspec.yaml
@@ -2,7 +2,7 @@
 description: Android implementation of the path_provider plugin.
 repository: https://github.com/flutter/plugins/tree/master/packages/path_provider/path_provider_android
 issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+path_provider%22
-version: 2.0.7
+version: 2.0.8
 
 environment:
   sdk: ">=2.14.0 <3.0.0"
diff --git a/packages/quick_actions/quick_actions/CHANGELOG.md b/packages/quick_actions/quick_actions/CHANGELOG.md
index d2d628c..c49f114 100644
--- a/packages/quick_actions/quick_actions/CHANGELOG.md
+++ b/packages/quick_actions/quick_actions/CHANGELOG.md
@@ -1,3 +1,8 @@
+## 0.6.0+8
+
+* Updates example app Android compileSdkVersion to 31.
+* Moves method call to background thread to fix CI failure.
+
 ## 0.6.0+7
 
 * Update minimum Flutter SDK to 2.5 and iOS deployment target to 9.0.
diff --git a/packages/quick_actions/quick_actions/android/src/main/java/io/flutter/plugins/quickactions/MethodCallHandlerImpl.java b/packages/quick_actions/quick_actions/android/src/main/java/io/flutter/plugins/quickactions/MethodCallHandlerImpl.java
index 2d89352..34563cb 100644
--- a/packages/quick_actions/quick_actions/android/src/main/java/io/flutter/plugins/quickactions/MethodCallHandlerImpl.java
+++ b/packages/quick_actions/quick_actions/android/src/main/java/io/flutter/plugins/quickactions/MethodCallHandlerImpl.java
@@ -13,11 +13,17 @@
 import android.content.res.Resources;
 import android.graphics.drawable.Icon;
 import android.os.Build;
+import android.os.Handler;
+import android.os.Looper;
 import io.flutter.plugin.common.MethodCall;
 import io.flutter.plugin.common.MethodChannel;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.Executor;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
 
 class MethodCallHandlerImpl implements MethodChannel.MethodCallHandler {
   protected static final String EXTRA_ACTION = "some unique action key";
@@ -47,10 +53,42 @@
         (ShortcutManager) context.getSystemService(Context.SHORTCUT_SERVICE);
     switch (call.method) {
       case "setShortcutItems":
-        List<Map<String, String>> serializedShortcuts = call.arguments();
-        List<ShortcutInfo> shortcuts = deserializeShortcuts(serializedShortcuts);
-        shortcutManager.setDynamicShortcuts(shortcuts);
-        break;
+        if (Build.VERSION.SDK_INT > Build.VERSION_CODES.N_MR1) {
+          List<Map<String, String>> serializedShortcuts = call.arguments();
+          List<ShortcutInfo> shortcuts = deserializeShortcuts(serializedShortcuts);
+
+          Executor uiThreadExecutor = new UiThreadExecutor();
+          ThreadPoolExecutor executor =
+              new ThreadPoolExecutor(
+                  0, 1, 1, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>());
+
+          executor.execute(
+              () -> {
+                boolean dynamicShortcutsSet = false;
+                try {
+                  shortcutManager.setDynamicShortcuts(shortcuts);
+                  dynamicShortcutsSet = true;
+                } catch (Exception e) {
+                  // Leave dynamicShortcutsSet as false
+                }
+
+                final boolean didSucceed = dynamicShortcutsSet;
+
+                // TODO(camsim99): Move re-dispatch below to background thread when Flutter 2.8+ is stable.
+                uiThreadExecutor.execute(
+                    () -> {
+                      if (didSucceed) {
+                        result.success(null);
+                      } else {
+                        result.error(
+                            "quick_action_setshortcutitems_failure",
+                            "Exception thrown when setting dynamic shortcuts",
+                            null);
+                      }
+                    });
+              });
+        }
+        return;
       case "clearShortcutItems":
         shortcutManager.removeAllDynamicShortcuts();
         break;
@@ -127,4 +165,13 @@
         .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
         .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
   }
+
+  private static class UiThreadExecutor implements Executor {
+    private final Handler handler = new Handler(Looper.getMainLooper());
+
+    @Override
+    public void execute(Runnable command) {
+      handler.post(command);
+    }
+  }
 }
diff --git a/packages/quick_actions/quick_actions/example/android/app/build.gradle b/packages/quick_actions/quick_actions/example/android/app/build.gradle
index 485ae55..465b4a6 100644
--- a/packages/quick_actions/quick_actions/example/android/app/build.gradle
+++ b/packages/quick_actions/quick_actions/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/quick_actions/quick_actions/pubspec.yaml b/packages/quick_actions/quick_actions/pubspec.yaml
index 9531b70..137156d 100644
--- a/packages/quick_actions/quick_actions/pubspec.yaml
+++ b/packages/quick_actions/quick_actions/pubspec.yaml
@@ -3,7 +3,7 @@
   Quick Actions on iOS and App Shortcuts on Android.
 repository: https://github.com/flutter/plugins/tree/master/packages/quick_actions/quick_actions
 issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+quick_actions%22
-version: 0.6.0+7
+version: 0.6.0+8
 
 environment:
   sdk: ">=2.14.0 <3.0.0"
diff --git a/packages/sensors/CHANGELOG.md b/packages/sensors/CHANGELOG.md
index acea470..3dbc5d2 100644
--- a/packages/sensors/CHANGELOG.md
+++ b/packages/sensors/CHANGELOG.md
@@ -2,6 +2,7 @@
 
 * Remove references to the Android V1 embedding.
 * Updated Android lint settings.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 2.0.3
 
diff --git a/packages/sensors/example/android/app/build.gradle b/packages/sensors/example/android/app/build.gradle
index d9c1e41..c5dd855 100644
--- a/packages/sensors/example/android/app/build.gradle
+++ b/packages/sensors/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/share/CHANGELOG.md b/packages/share/CHANGELOG.md
index c9a468d..1c93b48 100644
--- a/packages/share/CHANGELOG.md
+++ b/packages/share/CHANGELOG.md
@@ -2,6 +2,7 @@
 
 * Remove references to the Android V1 embedding.
 * Updated Android lint settings.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 2.0.4
 
diff --git a/packages/share/example/android/app/build.gradle b/packages/share/example/android/app/build.gradle
index 5b7b30b..c0f1e05 100644
--- a/packages/share/example/android/app/build.gradle
+++ b/packages/share/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/shared_preferences/shared_preferences/CHANGELOG.md b/packages/shared_preferences/shared_preferences/CHANGELOG.md
index 458be25..f0a3e39 100644
--- a/packages/shared_preferences/shared_preferences/CHANGELOG.md
+++ b/packages/shared_preferences/shared_preferences/CHANGELOG.md
@@ -1,6 +1,8 @@
 ## NEXT
 
 * Fixes newly enabled analyzer options.
+* Updates example app Android compileSdkVersion to 31.
+
 * Moved Android and iOS implementations to federated packages.
 
 ## 2.0.8
diff --git a/packages/shared_preferences/shared_preferences/example/android/app/build.gradle b/packages/shared_preferences/shared_preferences/example/android/app/build.gradle
index 857ac47..4cbb730 100644
--- a/packages/shared_preferences/shared_preferences/example/android/app/build.gradle
+++ b/packages/shared_preferences/shared_preferences/example/android/app/build.gradle
@@ -26,7 +26,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 30
+    compileSdkVersion 31
 
     sourceSets {
         main.java.srcDirs += 'src/main/kotlin'
diff --git a/packages/url_launcher/url_launcher/CHANGELOG.md b/packages/url_launcher/url_launcher/CHANGELOG.md
index 5aa0154..aaa4d4e 100644
--- a/packages/url_launcher/url_launcher/CHANGELOG.md
+++ b/packages/url_launcher/url_launcher/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 6.0.13
 
 * Fixed extracting browser headers when they are null error.
diff --git a/packages/url_launcher/url_launcher/example/android/app/build.gradle b/packages/url_launcher/url_launcher/example/android/app/build.gradle
index 8280da8..ca41cb1 100644
--- a/packages/url_launcher/url_launcher/example/android/app/build.gradle
+++ b/packages/url_launcher/url_launcher/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 30
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/video_player/video_player/CHANGELOG.md b/packages/video_player/video_player/CHANGELOG.md
index b0db4dc..d6b50d1 100644
--- a/packages/video_player/video_player/CHANGELOG.md
+++ b/packages/video_player/video_player/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.2.7
 
 * Fixes a regression where dragging a [VideoProgressIndicator] while playing
diff --git a/packages/video_player/video_player/example/android/app/build.gradle b/packages/video_player/video_player/example/android/app/build.gradle
index 5f1f3af..b1aaf8b 100644
--- a/packages/video_player/video_player/example/android/app/build.gradle
+++ b/packages/video_player/video_player/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/webview_flutter/webview_flutter/CHANGELOG.md b/packages/webview_flutter/webview_flutter/CHANGELOG.md
index 57d32ef..2124032 100644
--- a/packages/webview_flutter/webview_flutter/CHANGELOG.md
+++ b/packages/webview_flutter/webview_flutter/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.3.1
 
 * Add iOS-specific note to set `JavascriptMode.unrestricted` in order to set `zoomEnabled: false`.
diff --git a/packages/webview_flutter/webview_flutter/example/android/app/build.gradle b/packages/webview_flutter/webview_flutter/example/android/app/build.gradle
index 9a43699..0193946 100644
--- a/packages/webview_flutter/webview_flutter/example/android/app/build.gradle
+++ b/packages/webview_flutter/webview_flutter/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/webview_flutter/webview_flutter_android/CHANGELOG.md b/packages/webview_flutter/webview_flutter_android/CHANGELOG.md
index 09a797f..b978b08 100644
--- a/packages/webview_flutter/webview_flutter_android/CHANGELOG.md
+++ b/packages/webview_flutter/webview_flutter_android/CHANGELOG.md
@@ -1,3 +1,7 @@
+## NEXT
+
+* Updates example app Android compileSdkVersion to 31.
+
 ## 2.3.0
 
 * Replaces platform implementation with API built with pigeon.
diff --git a/packages/webview_flutter/webview_flutter_android/example/android/app/build.gradle b/packages/webview_flutter/webview_flutter_android/example/android/app/build.gradle
index 1dcd363..932aba4 100644
--- a/packages/webview_flutter/webview_flutter_android/example/android/app/build.gradle
+++ b/packages/webview_flutter/webview_flutter_android/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md b/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md
index 3d55997..3248b20 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md
+++ b/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md
@@ -2,6 +2,7 @@
 
 * Updated Android lint settings.
 * Updated package description.
+* Updates example app Android compileSdkVersion to 31.
 
 ## 2.0.2
 
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/example/android/app/build.gradle b/packages/wifi_info_flutter/wifi_info_flutter/example/android/app/build.gradle
index 86cf517..8f96b53 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/example/android/app/build.gradle
+++ b/packages/wifi_info_flutter/wifi_info_flutter/example/android/app/build.gradle
@@ -25,7 +25,7 @@
 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 
 android {
-    compileSdkVersion 29
+    compileSdkVersion 31
 
     lintOptions {
         disable 'InvalidPackage'
