diff --git a/packages/camera/CHANGELOG.md b/packages/camera/CHANGELOG.md index d5b86843ef47..c29670baaae0 100644 --- a/packages/camera/CHANGELOG.md +++ b/packages/camera/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.4.0+3 + +* Fixed a crash when the plugin is registered by a background FlutterView. + ## 0.4.0+2 * Fix orientation of captured photos when camera is used for the first time on Android. diff --git a/packages/camera/android/src/main/java/io/flutter/plugins/camera/CameraPlugin.java b/packages/camera/android/src/main/java/io/flutter/plugins/camera/CameraPlugin.java index 4612f2bbb8a5..8cdc95e19790 100644 --- a/packages/camera/android/src/main/java/io/flutter/plugins/camera/CameraPlugin.java +++ b/packages/camera/android/src/main/java/io/flutter/plugins/camera/CameraPlugin.java @@ -137,6 +137,11 @@ public void onActivityDestroyed(Activity activity) {} } public static void registerWith(Registrar registrar) { + if (registrar.activity() == null) { + // When a background flutter view tries to register the plugin, the registrar has no activity. + // We stop the registration process as this plugin is foreground only. + return; + } final MethodChannel channel = new MethodChannel(registrar.messenger(), "plugins.flutter.io/camera"); diff --git a/packages/camera/pubspec.yaml b/packages/camera/pubspec.yaml index 6f560124bae0..dcbff327f044 100644 --- a/packages/camera/pubspec.yaml +++ b/packages/camera/pubspec.yaml @@ -2,7 +2,7 @@ name: camera description: A Flutter plugin for getting information about and controlling the camera on Android and iOS. Supports previewing the camera feed, capturing images, capturing video, and streaming image buffers to dart. -version: 0.4.0+2 +version: 0.4.0+3 authors: - Flutter Team - Luigi Agosti diff --git a/packages/google_maps_flutter/CHANGELOG.md b/packages/google_maps_flutter/CHANGELOG.md index d6c1c7025c89..dc62d4968476 100644 --- a/packages/google_maps_flutter/CHANGELOG.md +++ b/packages/google_maps_flutter/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.2.0+4 + +* Fixed a crash when the plugin is registered by a background FlutterView. + ## 0.2.0+3 * Fixed a memory leak on Android - the map was not properly disposed. diff --git a/packages/google_maps_flutter/android/src/main/java/io/flutter/plugins/googlemaps/GoogleMapsPlugin.java b/packages/google_maps_flutter/android/src/main/java/io/flutter/plugins/googlemaps/GoogleMapsPlugin.java index e0cf092c1835..aced16772d50 100644 --- a/packages/google_maps_flutter/android/src/main/java/io/flutter/plugins/googlemaps/GoogleMapsPlugin.java +++ b/packages/google_maps_flutter/android/src/main/java/io/flutter/plugins/googlemaps/GoogleMapsPlugin.java @@ -27,6 +27,11 @@ public class GoogleMapsPlugin implements Application.ActivityLifecycleCallbacks private final int registrarActivityHashCode; public static void registerWith(Registrar registrar) { + if (registrar.activity() == null) { + // When a background flutter view tries to register the plugin, the registrar has no activity. + // We stop the registration process as this plugin is foreground only. + return; + } final GoogleMapsPlugin plugin = new GoogleMapsPlugin(registrar); registrar.activity().getApplication().registerActivityLifecycleCallbacks(plugin); registrar diff --git a/packages/google_maps_flutter/pubspec.yaml b/packages/google_maps_flutter/pubspec.yaml index cbeedc3248ee..5b6463040e97 100644 --- a/packages/google_maps_flutter/pubspec.yaml +++ b/packages/google_maps_flutter/pubspec.yaml @@ -2,7 +2,7 @@ name: google_maps_flutter description: A Flutter plugin for integrating Google Maps in iOS and Android applications. author: Flutter Team homepage: https://github.com/flutter/plugins/tree/master/packages/google_maps_flutter -version: 0.2.0+3 +version: 0.2.0+4 dependencies: flutter: