NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1370 most downloaded on pub.dev
Android implementation of the image_picker plugin.
Last release 5 days ago
02 Oct 2026
Ships fairly regularly
a new release about every 4 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
101 releases · first in 2022
One column per quarter.
Updates pigeon dev_dependency to ^27.3.2 for analyzer 14 compatibility.
Bump androidx.core:core from 1.13.1 to 1.17.0.
Bumps androidx.activity:activity from 1.11.0 to 1.12.2.
Bumps androidx.activity:activity from 1.12.2 to 1.12.4.
Updates build files from Groovy to Kotlin.
Bumps androidx.core:core from 1.17.0 to 1.18.0.
Updates internal implementation to use Kotlin Pigeon.
Migrates to Built-in Kotlin to support AGP 9.
Bumps the androidx group across 10 directories with 1 update.
Adds support for getMultiVideoWithOptions.
getMultiVideoWithOptions.Fixes an issue where image_picker returns a null file after selecting an image from the gallery on Android 16+, caused by incorrect handling of conten
Fixes an issue where image_picker returns a null file after selecting an image from the gallery on Android 16+, caused by incorrect handling of content URIs in the Android implementation.
ImagePickerUtils.java to handle Android 16+ behavior correctlyeffectiveUsePhotoPicker to verify behavior on Android 16 (API 36)Fixes flutter/flutter#182071
Fixes flutter/flutter#184826
Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
useAndroidPhotoPicker was false. The plugin now uses the Android Photo Picker on API 36 and
above regardless of that flag.Bumps com.android.tools.build:gradle to 8.12.1.
Updates minimum supported SDK version to Flutter 3.35.
Bumps androidx.exifinterface:exifinterface from 1.3.7 to 1.4.1.
Resolves Gradle 9 deprecations.
Updates Java compatibility version to 17 and minimum supported SDK version to Flutter 3.35/Dart 3.9.
Removes reference to internal isSystemPickerAvailable$activity_release() method.
isSystemPickerAvailable$activity_release() method.* Updates to Pigeon 26.
Bumps androidx.activity:activity from 1.10.1 to 1.11.0.
Bumps com.android.tools.build:gradle from 8.12.1 to 8.1.
Bumps androidx.exifinterface:exifinterface from 1.4.1 to 1.4.2.
Null safety when ContentResolver cannot open a stream.
Null safety when ContentResolver cannot open a stream.
Copied from closed: #12682
Fixes: flutter/flutter#191988
missing_valid_image_uri instead.ImageResizer.resizeImageIfNeeded created a fresh BitmapFactory.Options and passed it to calculateSampleSize , which read options.outWidth and options.
ImageResizer.resizeImageIfNeeded created a fresh BitmapFactory.Options and passed it to calculateSampleSize, which read options.outWidth and options.outHeight. That object had never been used for a decode, so both were 0 and the sample size was always 1: every resize with maxWidth or maxHeight decoded the full-size bitmap (about 48 MB for a 12 MP photo) before scaling it down. The original dimensions were already read by readFileDimensions, into a different Options.
This PR passes those original dimensions to calculateSampleSize instead. The sample size stays the largest power of two that still decodes at least the target size, so the output dimensions are unchanged.
The new onResizeImageIfNeeded_whenDownscaling_shouldSubsampleFromOriginalSize test resizes a 12x7 image to a width of 3 and checks the pixel decode uses inSampleSize == 2 (before the fix it was 1) and that the output is still 3x2. This is not a regression: subsampling has never taken effect, since inSampleSize has been 1 from when it was introduced in #3423, and before that the full image was decoded too.
Fixes flutter/flutter#193036
Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
maxWidth or maxHeight always decoding the full-size
image; large images are now subsampled while decoding.Fixes another app crash case on Android 12+, and refactors getting of paths from intents.
Updates minimum supported SDK version to Flutter 3.22/Dart 3.4.
Update documentation to note that limit is not always supported.
Bumps androidx.core:core from 1.10.1 to 1.13.1.
Updates Android Gradle Plugin to 8.5.1.
Bumps androidx.activity:activity from 1.7.2 to 1.8.2.
Bumps androidx.activity:activity from 1.8.2 to 1.9.0.
Updates lint checks to ignore NewerVersionAvailable.
Bumps androidx.annotation:annotation from 1.7.1 to 1.8.0.
Bumps androidx.activity:activity from 1.9.0 to 1.9.1.
Bumps androidx.annotation:annotation from 1.8.0 to 1.8.1.
Bumps androidx.annotation:annotation from 1.8.1 to 1.8.2.
Removes dependency on org.jetbrains.kotlin:kotlin-bom.
Bumps androidx.activity:activity from 1.9.1 to 1.9.2.
Updates Java compatibility version to 11.
Updates Pigeon for non-nullable collection type support.
Bumps androidx.annotation:annotation from 1.8.2 to 1.9.0.
Fixes a security issue related to improperly trusting filenames provided by a ContentProvider.
ContentProvider.Updates androidx.activity:activity to 1.9.3.
Updates androidx.annotation:annotation to 1.9.1.
Ensures that platform messages on background queues are handled in order.
Updates compileSdk 34 to flutter.compileSdkVersion.
Removes obsolete code related to supporting SDK <21.
Updates androidx.activity:activity to 1.10.1.
androidx.activity:activity to 1.10.1.Updates kotlin version to 2.2.0 to enable gradle 8.11 support.
Fixes app crashes on Android 12+ caused by selecting images with size 0.
Updates documentation to note that Android Photo Picker use is not optional on Android 13+.
Adds limit parameter to MediaOptions and MultiImagePickerOptions that sets a limit to how many media or image items can be selected.
MediaOptions and MultiImagePickerOptions that sets a limit to how many media or image items can be selected.Bumps androidx.exifinterface:exifinterface from 1.3.6 to 1.3.7.
Updates minimum supported SDK version to Flutter 3.16/Dart 3.2.
Fixes resizing bug and updates rounding to be more accurate.
Bumps androidx.annotation:annotation from 1.7.0 to 1.7.1.
Updates plugin and example Gradle versions to 7.6.3.
* Fixes new lint warnings.
Adds additional category II and III exif tags to be copied during photo resize.
Fixes NullPointerException on pre-Android 13 devices when using Android Photo Picker to pick image or video.
Updates annotations lib to 1.7.0.
Your coding agent can read these notes before it upgrades. Set up the MCP server →