๐Ÿ“ฆ picker_pro_max_ultra

pub package

A powerful and customizable media picker for Flutter, built with performance and ease of use in mind.

Easily pick images , file and videos from device storage or capture new ones with camera support. Comes with advanced features like folder browsing, multi-selection, capture image from camera, and custom UI using GetX.


Android iOS Web Windows macOS Linux
Support SDK 21+ iOS 12+ โŒ โŒ โŒ โŒ

โœจ Features

  • ๐Ÿ“ธ Capture image using the camera
  • ๐Ÿ–ผ Pick images & videos from the gallery
  • ๐Ÿ“‚ Folder-based media browsing
  • ๐Ÿ” Multi-selection support
  • ๐Ÿ” File pick support
  • โšก Fast loading with optimized performance

๐Ÿ›  Installation

Add this to your pubspec.yaml:

dependencies:
  picker_pro_max_ultra: ^<latest_version>

Replace <latest_version> with the latest version on pub.dev.


โš™๏ธ Setup

โœ… Android

Add the following permissions to your AndroidManifest.xml (android/app/src/main/AndroidManifest.xml):

    <!-- Media Access -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <!-- Camera Access -->
<uses-permission android:name="android.permission.CAMERA" />

๐Ÿ iOS

Add the following entries to your ios/Runner/Info.plist:


<key>NSPhotoLibraryUsageDescription</key><string>This app requires access to your photo library.
</string>

<key>NSCameraUsageDescription</key><string>This app requires access to the camera.</string>

<key>NSMicrophoneUsageDescription</key><string>This app requires access to the microphone.</string>

๐Ÿงช Example Usage


// Pick media
final List<MediaFile> files = await MediaPicker(context: context,maxLimit: 5 ?? 1,mediaType: MediaType.image).showPicker();
// Capture from camera
final File? captured = await MediaPicker(context: context).capturedFile();
// Document
final File? = await MediaPicker(context: context,).picFile();


For a full example, check out the example folder. | |


๐ŸŽฅ Demo (Screen Recording)

Screen Recording


๐Ÿงฉ Contributions

Contributions, issues, and feature requests are welcome!
Feel free to check issues page.


๐Ÿ“„ License

This project is licensed under the MIT License.