firebase /
flutterfire
🔥 A collection of Firebase plugins for Flutter apps.
Loading repository data…
fluttercandies / repository
A Flutter plugin that provides images, videos, and audio abstraction management APIs without interface integration, available on Android, iOS, macOS and OpenHarmony.
English | 中文
A Flutter plugin that provides assets abstraction management APIs without UI integration, you can get assets (image/video/audio) on Android, iOS, macOS and OpenHarmony.
| name | pub | github |
|---|---|---|
| wechat_assets_picker | ||
| wechat_camera_picker |
For versions upgrade across major versions, see the migration guide for detailed info.
Please search common issues in [GitHub issues][] for build errors, runtime exceptions, etc.
Two ways to add the plugin to your pubspec:
flutter pub add photo_manager.pubspec.yaml's dependencies section:dependencies:
photo_manager: $latest_version
The latest stable version is:
[][pub package]
import 'package:photo_manager/photo_manager.dart';
Minimum platform versions: Android 16, iOS 9.0, macOS 10.15.
We ship this plugin with Kotlin 1.7.22.
If your projects use a lower version of Kotlin/Gradle/AGP,
please upgrade them to a newer version.
More specifically:
gradle-wrapper.properties)
to 7.5.1 or the latest version.ext.kotlin_version)
to 1.7.22 or the latest version.com.android.tools.build:gradle)
to 7.2.2 or the latest version.If you're not setting your compileSdkVersion or targetSdkVersion to 29,
you can skip this section.
On Android 10, Scoped Storage was introduced, which causes the origin resource file not directly inaccessible through it file path.
If your compileSdkVersion or targetSdkVersion is 29,
you can consider adding android:requestLegacyExternalStorage="true"
to your AndroidManifest.xml in order to obtain resources:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.fluttercandies.photo_manager_example">
<application
android:label="photo_manager_example"
android:icon="@mipmap/ic_launcher"
android:requestLegacyExternalStorage="true">
</application>
</manifest>
Note: Apps that are using the flag will be rejected from the Google Play.
This is not a requirement, the plugin can still work with caching files.
But you'll need to control caches on your own, the best practice is to clear file caches
each time when you start your app by calling PhotoManager.clearFileCache().
The plugin use [Glide][] to create thumbnail bytes for Android.
If you found some warning logs with Glide appearing,
it means the main project needs an implementation of AppGlideModule.
See [Generated API][] for the implementation.
Define the NSPhotoLibraryUsageDescription
key-value in the ios/Runner/Info.plist:
<key>NSPhotoLibraryUsageDescription</key>
<string>In order to access your photo library</string>
If you want to grant only write-access to the photo library on iOS 11 and above,
define the NSPhotoLibraryAddUsageDescription
key-value in the ios/Runner/Info.plist.
It's pretty much the same as the NSPhotoLibraryUsageDescription.

Most of the APIs can only use with granted permission.
final PermissionState ps = await PhotoManager.requestPermissionExtend(); // the method can use optional param `permission`.
if (ps.isAuth) {
// Granted
// You can to get assets here.
} else if (ps.hasAccess) {
// Access will continue, but the amount visible depends on the user's selection.
} else {
// Limited(iOS) or Rejected, use `==` for more precise judgements.
// You can call `PhotoManager.openSetting()` to open settings for further steps.
}
But if you're pretty sure your callers will be only called after the permission is granted, you can ignore permission checks:
PhotoManager.setIgnorePermissionCheck(true);
For background processing (such as when the app is not in the foreground), ignore permissions check would be proper solution.
You can also read the current permission state with
PhotoManager.getPermissionState. Make sure the sa
Selected from shared topics, language and repository description—not editorial ratings.
firebase /
🔥 A collection of Firebase plugins for Flutter apps.
alibaba /
FlutterBoost is a Flutter plugin which enables hybrid integration of Flutter for your existing native apps with minimum efforts
MaikuB /
AssetEntityA Flutter plugin for displaying local notifications on Android, iOS, macOS, Linux and Windows
Baseflow /
Permission plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to request and check permissions.
HemantKArya /
🌸Bloomee is a cross-platform music app designed to bring you ad-free tunes from various sources. 🌼🎵
akshathjain /
A draggable Flutter widget that makes implementing a SlidingUpPanel much easier!