NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #492 most downloaded on pub.dev
Android implementation of the camera plugin using the CameraX library.
Last release 5 days ago
30 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
3 years old
124 releases · first in 2023
Removes logic that explicitly removes READ_EXTERNAL_STORAGE permission that may be implied from WRITE_EXTERNAL_STORAGE and updates the README to tell
READ_EXTERNAL_STORAGE permission that may be implied
from WRITE_EXTERNAL_STORAGE and updates the README to tell users how to manually
remove it from their app's merged manifest if they wish.Removes nonnull annotation from MeteringPointHostApiImpl#getDefaultPointSize.
One column per quarter.
Bumps camerax_version from 1.3.4 to 1.4.1.
Bumps com.google.guava:guava from 33.3.1-android to 33.4.0-android.
Corrects assumption about automatic preview correction happening on API >= 29 to API > 29, based on the fact that the ImageReader Impeller backend is
ImageReader Impeller backend is not used for the most part on
devices running API 29+.Bumps com.google.guava:guava from 33.3.0 to 33.3.1.
com.google.guava:guava from 33.3.0 to 33.3.1.Updates Java compatibility version to 11.
Marks uses of Camera2Interop with @OptIn annotation.
Camera2Interop with @OptIn annotation.Removes dependency on org.jetbrains.kotlin:kotlin-bom.
* Updates AGP version to 8.5.0.
Updates README to remove references to maxVideoDuration, as it was never visible to app-facing clients, nor was it implemented in camera_android.
maxVideoDuration, as it was never
visible to app-facing clients, nor was it implemented in camera_android.Updates lint checks to ignore NewerVersionAvailable.
Adds logic to support building a camera preview with Android Surfaces not backed by a SurfaceTexture to which CameraX cannot not automatically apply t
Surfaces not backed by a SurfaceTexture
to which CameraX cannot not automatically apply the transformation required to achieve the correct rotation.Modifies stopVideoRecording to ensure that the method only returns when CameraX reports that the recorded video finishes saving to a file.
stopVideoRecording to ensure that the method only returns when CameraX reports that the
recorded video finishes saving to a file.startVideoCapturing to ensure that the method only returns when CameraX reports that
video recording has started.setDescriptionWhileRecording and leaves a todo to add this feature.Updates README.md to reflect the fact that the camera_android_camerax camera plugin implementation is the endorsed Android implementation for camera:
README.md to reflect the fact that the camera_android_camerax camera plugin implementation
is the endorsed Android implementation for camera: ^0.11.0.Update to latest stable camerax 1.3.3.
1.3.3.Updates minimum supported SDK version to Flutter 3.22/Dart 3.4.
README.md about allowing image streaming in the background and the required
WRITE_EXTERNAL_STORAGE permission specified in the plugin to allow writing photos and videos to
files.* Supports Impeller.
Reverts changes to support Impeller.
Updates Guava version to 33.2.1.
Prevents usage of unsupported concurrent UseCases based on the capabiliites of the camera device.
UseCases based on the capabiliites of the camera device.Adds empty implementation for prepareForVideoRecording since this optimization is not used on Android.
prepareForVideoRecording since this optimization is not used on Android.Shortens default interval that internal Java InstanceManager uses to release garbage collected weak references to native objects.
InstanceManager uses to release garbage collected weak references to
native objects.InstanceManager uses to release garbage collected weak references to
native objects when an ImageAnalysis.Analyzer is set/removed to account for increased memory usage of analyzing
images that may cause a crash.Adds support to control video FPS and bitrate. See CameraController.withSettings.
CameraController.withSettings.Modifies resolution selection logic to use an AspectRatioStrategy for all aspect ratios supported by CameraX.
AspectRatioStrategy for all aspect ratios supported by CameraX.ResolutionFilter to resolution selection logic to prioritize resolutions that match
the defined ResolutionPresets.Moves integration_test dependency to dev_dependencies.
Implements setFocusMode, which makes this plugin reach feature parity with camera_android.
setFocusMode, which makes this plugin reach feature parity with camera_android.setExposureCompensationIndex return value to use index returned by CameraX.Updates README.md to encourage developers to opt into this implementation of the camera plugin.
README.md to encourage developers to opt into this implementation of the camera plugin.Initial release of this camera implementation that supports:
Initial release of this camera implementation that supports:
See README.md for more details on the limitations of this implementation.
Update README.md to include known duplicate Kotlin classes issue.
README.md to include known duplicate Kotlin classes issue.Adds a dependency on kotlin-bom to align versions of Kotlin transitive dependencies.
README.md regarding duplicate Kotlin classes issue.* Fixes Java lints.
Removes obsolete null checks on non-nullable values.
Updates README.md to fully cover unimplemented functionality.
README.md to fully cover unimplemented functionality.Updates Guava version to 32.0.0.
Updates Guava version to 32.0.1.
Fixes unawaited_futures violations.
Marks all Dart-wrapped Android native classes as @immutable.
@immutable.CONTRIBUTING.md to note requirements of Dart-wrapped Android native classes.Implements off, auto, and always flash mode configurations for image capture.
Fixes issue with image data not being emitted after relistening to stream returned by onStreamedFrameAvailable.
onStreamedFrameAvailable.Removes usages of deprecated APIs for resolution configuration.
Migrates styleFrom usage in examples off of deprecated primary and onPrimary parameters.
styleFrom usage in examples off of deprecated primary and onPrimary parameters.Wraps classes needed to implement resolution configuration for video recording.
Explicitly removes READ_EXTERNAL_STORAGE permission that may otherwise be implied from WRITE_EXTERNAL_STORAGE.
READ_EXTERNAL_STORAGE permission that may otherwise be implied from WRITE_EXTERNAL_STORAGE.Adds pub topics to package metadata.
Implements resolution configuration for all camera use cases.
Implements startVideoCapturing.
startVideoCapturing.* Implements torch flash mode.
Changes fallback resolution strategies for camera use cases to look for a higher resolution if neither the desired resolution nor any lower resolution
Fixes _getResolutionSelectorFromPreset null pointer error.
_getResolutionSelectorFromPreset null pointer error.Updates minimum supported SDK version to Flutter 3.10/Dart 3.0.
CameraXProxy class to test JavaObject creation and their method calls in the plugin.Updates example app to use non-deprecated video_player method.
Implements lockCaptureOrientation and unlockCaptureOrientation.
lockCaptureOrientation and unlockCaptureOrientation.* Fixes new lint warnings.
Removes or updates any references to an ActivityPluginBinding when the plugin is detached or attached/re-attached, respectively, to an Activity.
ActivityPluginBinding when the plugin is detached
or attached/re-attached, respectively, to an Activity.Wraps CameraX classes needed to implement setting focus and exposure points and exposure offset.
Modifies buildPreview to return Texture that maps to camera preview, building in the assumption that createCamera should have been called before build
buildPreview to return Texture that maps to camera preview, building in the assumption
that createCamera should have been called before building the preview. Fixes
https://github.com/flutter/flutter/issues/140567.Adds documentation to clarify how the plugin uses resolution presets as target resolutions for CameraX.
Wraps CameraX classes needed to set capture request options, which is needed to implement setting the exposure mode.
Removes all remaining unawaited calls to fix potential race conditions and updates the camera state when video capture starts.
unawaited calls to fix potential race conditions and updates the
camera state when video capture starts.Your coding agent can read these notes before it upgrades. Set up the MCP server →