photo_manager 3.8.3
photo_manager: ^3.8.3 copied to clipboard
A Flutter plugin that provides album assets abstraction management APIs on Android, iOS, macOS, and OpenHarmony.
CHANGELOG #
To know more about breaking changes, see the Migration Guide.
Unreleased #
None.
3.8.3 #
Fixes
- Fix all media assets being returned when
filterOptionis not specified instead of respecting the requested type.
3.8.2 #
Fixes
- Fix type error when calling
presentLimiteddue to map type inference issue withputIfAbsent.
3.8.1 #
Fixes
- Fix SQL syntax error on Android when querying assets with pagination. This caused "Failed to obtain the cursor" errors on some devices (e.g., Huawei, realme) due to missing space between ORDER BY clause and LIMIT clause.
3.8.0 #
Features
- Add Swift Package Manager support for iOS and macOS.
- Add
cancelTokenparameter toAssetEntity.loadFile. - Add
cancelAllRequestmethod toPhotoManager. - The
AssetEntity.getFileandAssetEntity.getOriginBytesmethods are public. - Add
relativePathAsyncgetter toAssetPathEntity. - Add iOS 18 smart album subtypes support:
smartAlbumSpatial- For spatial/3D photossmartAlbumProRes- For ProRes videossmartAlbumScreenRecordings- For screen recordingssmartAlbumReceipts- For receipts in the Utilities sectionsmartAlbumHandwriting- For handwriting in the Utilities sectionsmartAlbumIllustrations- For illustrations in the Utilities sectionsmartAlbumQRCodes- For QR codes in the Utilities section
- Add optional
latitude,longitude, andcreationDateparameters tosaveImage,saveImageWithPath, andsaveVideomethods.- On iOS: Sets location and creation date metadata for saved assets.
- On Android Q+: Sets DATE_TAKEN field and location metadata for saved assets.
- Add batch asset move functionality using
createWriteRequestAPI for Android 11+.
Improvements
- Remove implied
FilterOptionGroups when querying paths and assets. This fixes assets finding when they were created in the future. Some edge cases regarding performance drops caused by the complicated sort queries might also get fixed. - Add
PermissionState.isLimited.
Fixes
- Fix
type 'Null' is not a subtype of type 'Map<dynamic, dynamic>'error on Android when copying or moving assets fails.- Android now properly throws exceptions instead of returning null when
copyAssetToGalleryormoveAssetToGalleryoperations fail. - Dart side now handles null responses gracefully by throwing a
PlatformException.
- Android now properly throws exceptions instead of returning null when
- Fix PHImageManager crash on iOS by ensuring all PHImageManager/PHCachingImageManager methods are called on the main thread. This resolves race conditions and deadlocks when thumbnail operations are dispatched to QoS background queues.
- Fix EXC_BAD_ACCESS crash caused by accessing deallocated memory in async blocks on iOS.
- Fixed PHCachingImageManager methods:
fetchThumb,exportAssetToFile,fetchFullSizeImageFile. - Fixed PHAssetResourceManager methods:
fetchVideoResourceToFile,fetchOriginImageFile. - Fixed PHPhotoLibrary save methods:
saveImage,saveImageWithPath,saveVideo,saveLivePhoto.
- Fixed PHCachingImageManager methods:
- Fix
AssetEntity.latlngAsync()returning zero location for videos on Android by usingMediaMetadataRetrieverto extract location data from video files. - Fix nullability mismatch for
titleparameter insaveVideoandsaveImageWithPathmethods.
3.7.1 #
Fixes
- Fix inconsistent
jvmTargetcompatibility on Android.
3.7.0 #
Features
- Add
includeHiddenAssetsoption toPMFilterandFilterOptionGroupto include hidden assets in the results on iOS.
Fixes
- Fix
SizeConstraintnot working for videos on Android. (#1275) - Fix inconsistent resizing behavior between iOS and Android in
thumbnailDataWithSize. (#1271)
Improvements
- No longer set
sourceCompatibilityandtargetCompatibilityfor Android dynamically. - Make native library's version parsed from the yaml.
3.6.4 #
Fixes
- Fix potential nil class value when unwrapping caught exceptions on Darwin.
3.6.3 #
Improvements
- Optimize task priority handling on Darwin by automatically assigning QoS levels based on method types.
- Optimize the default sort descriptors on Darwin.
Fixes
- Fix the incorrect type of conversion with the Live-Photo's duration on Darwin.
3.6.2 #
Fixes
- Fix request permissions for images and videos on Android API 33+.
3.6.1 #
Fixes
- Do not throw when querying non-existing assets in bulk on Android.
3.6.0 #
Features
- Allows to get the duration of a Live Photo with
AssetEntity.durationWithOptionson iOS and macOS.
Improvements
- Improves the options when fetching a fixed number of assets on iOS and macOS.
Fixes
- Do not use
privateFileURLon iOS 18+. - Fixes saving MP4 videos will result in 3GP on Android API 30-.
- Fixes nullable results returned when saving images and videos on Android.
3.5.2 #
Improvements
- Get rid of
@try@catchwhen toggling favorite on Darwin.
Fixes
- Fix no returned IDs after successful deletion on Android API 29+.
- Fix mediaLocation = true does not work on Android API 34.
3.5.1 #
Improvements
- Reuse files when saving images on Darwin.
- Returns non-nullable results as much as possible.
- Fix export session file type with videos for the first time on Darwin.
3.5.0 #
Features
- Provide
PMDarwinAVFileTypeto help convert entities' files on iOS and macOS by making explicit exports.
Improvements
- Improve cache output path equality on iOS and macOS.
- Get the current resource filename rather than the raw one on iOS and macOS. Also the plugin expands the ability when getting titles.
- Use
PHCachingImageManagerto improve image memory caches on iOS and macOS.
Fixes
- Fix incorrect download finished prediction during iCloud file downloading.
3.4.0 #
Breaking Changes
saveLivePhoto now requires title rather than filename.
Features
- Add
getPermissionStatemethod toPhotoManager.
Improvements
- Adds a detached state for managers. Callers with those managers will first be aware of the detaching state before any actual calls to avoid crashes.
- Errors replied by the channel do not include detailed messages before. Now the code will unwrap certain exceptions to extract details from them.
- Expose
progressHandlerforAssetEntity.getMediaUrl. - Expose
withSubtypeforAssetEntity.isLocallyAvailableto request if a Live Photo resource is available.
Fixes
PHAssetResourcewith the typePHAssetResourceTypeFullSizeVideodoes not count as a video type before, making the resource obtain ignore them.- Fixes potential range exception when converting
NSTimeIntervalon Darwin. - Fixes progress not being updated when getting the non-original video file on iOS.
- Fixes incorrect Live Photo resource being obtained which will result in a wrong aspect ratio.
- Fixes Live Photos saving exceptions with the paired video.
- Other lints and type promotion fixes.
3.3.0 #
Breaking Changes
saveImage now requires filename rather than title, other save methods do not require title anymore.
Improvements
- Allows saving assets with a given orientation value.
- Improves the reading sequence when saving assets, which likely fixes issues with wrong orientation value.
- Reads image size from EXIF rather than decoding from the bitmap factory.
- Upgrades Android EXIF library.
- Add verbose log for
MethodChannelPlugin. (UsePhotoManager.setLogand passverboseFilePathto enable it.) - Add
getVerboseFilePathforPhotoManager.
3.2.3 #
Fixes
- Access
PMProgressHandlermore safely on iOS/macOS to avoid crashes and unfinished results.
3.2.2 #
Fixes
- Do not require
WRITE_EXTERNAL_STORAGEif not declared in the manifest with Android 29-. - Fix
fetchPathPropertiesexception on Android of API 28.
3.2.1 #
Improvements
- Declare
NSPrivacyAccessedAPICategoryFileTimestampfor iOS privacy policies.
Fixes
- Fixes compile exceptions with Xcode versions that are not compatible with iOS 17.0.
- Modified the way to read the Java version in
build.gradle.
3.2.0 #
Improvements
- Restores
containsLivePhotostotrueby default and deprecates it. - Use the main resource's filename for the title by default on iOS.
- Support more methods on the OpenHarmony.
Fixes
- Fix obtaining the correct resource from various types of resources on iOS.
- Fix
isLocallyAvailablefor edited assets on iOS.
3.1.1 #
Improvements
- Update plugin structure for OpenHarmony.
3.1.0 #
Breaking Changes
AssetPathEntity.darwinTypeandAssetPathEntity.darwinSubtypeare deprecated.containsLivePhotosnow defaults tofalse.
See the Migration Guide for details of breaking changes.
Features
- Support OpenHarmony.
Fixes
- Do not predicate subtype images as adjusted on Darwin.
- Fix
PMProgressHandlernot getting notified when failed on Darwin. - Merge Android API 29 and 30
PermissionDelegates which allows Android API 29 to grant permissions withoutWRITE_EXTERNAL_STORAGE.
Improvements
- Improve code formatting.
- Add privacy file for iOS/macOS. (#1120)
3.0.0 #
Breaking Changes
See the Migration Guide for details of breaking changes.
Improvements
- Remove the restriction of
getMediaUrl.
Fixes
- Fix
PhotoManager.editor.deleteWithIdsmethod not working on Android API 29. - Dispatch channel calls in main thread on Darwin.
- Fix
presentLimitdid not finish on Android. (#1052) - Fix
requestPermissionExtendreturns the incorrect status on Android API 34.
2.8.1 #
Fixes
- Upgrade android/build.gradle to load the current java version from some environment variables.
- Fix the
setIgnorePermissionCheckmethod not working on Android.
2.8.0 #
Breaking Changes
See the Migration Guide for details of breaking changes.
Features
- Support Android 14 with limited access to assets.
Fixes
- Correct the key when fetching video info with MMR on Android. (#997)
- Retrieve original media instead of one with adjustments/filters for subtype files on iOS. (#976)
- Returns original file name instead of
FullSizeRender.*if this has adjustments on iOS. (#976)
Improvements
- Add locks to the image provider.
2.7.1 #
Fixes
- Fix namespace on Android.
- Remove the package definition from the manifest.
- Use
math.pow(2^63)-1to make Web compile work again. - Fix the
endargument ofPhotoManager.getAssetListRangeis being handled incorrectly on Darwin. (#962)
2.7.0 #
Features
- Support
darwinTypeanddarwinSubTypeinAssetPathEntityon iOS and macOS. (#950)
Improvements
- Roll dependencies on Android. (#933)
Fixes
- Fix filter option group. (#919)
- Fix
originFileWithSubtypeandfileWithSubtypefor livePhoto. - Fix: support only add permission for iOS/macOS. (#944)
- Fix: modified the output path for iOS(add id in next path).
- Fix: Fixed a possible problem with the permission for darwin.
- Fix:
needTitleforCustomFilter.
2.6.0 #
Features
- Support
CustomFilterfor more filter options. (#901) - Add two new static methods for
PhotoManager:getAssetCountfor getting assets count.getAssetListRangefor getting assets between start and end.
2.5.2 #
Improvements
- Reply errors when thumbnails are failed to load on Android. (#883)
2.5.1+1 #
Fixes
- Fix pending permissions request on Android. (#879)
2.5.1 #
Improvements
- Always declare
READ_EXTERNAL_STORAGEpermission on Android. (#874) - Upgrade Glide and Kotlin libraries version. (#872)
- Avoid using file-based saving methods on Android. (#871)
- Use
ContentUrisfor retrieving Media URIs on Android. (#870) - Improve media subtype on iOS. (#863)
2.5.0 #
Features
- Support saving Live Photos on iOS and macOS. (#851)
- Introduce
DarwinEditorto replaceIosEditor. (#855)
2.4.2 #
Improvements
- Expose
frameforAssetEntity.thumbnailDataWithSize. (#850)
2.4.1 #
Improvements
- Use last modified date for Glide caches key on Android. (#848)
2.4.0 #
Features
- Support both legacy and scoped storage on Android. (#833)
Fixes
- Avoid duplicate
copyItemAtURLfor videos on iOS. (#840) - Correct permission checks with
requestPermissionExtendon Android 13. (#843)
2.3.0 #
Features
- Support Android 13 (API 33) permissions.
Improvements
- Adapt Flutter 3.3. (#820)
- Retrieve metadata for videos when empty on Android. (#819)
Fixes
- Fix saving videos with path on Android 29-. (#829)
2.2.1 #
Fixes
- Fix saving images with path on Android 29-. (#815)
2.2.0 #
Breaking Changes
- Introduce
AssetPathEntity.assetCountAsyncgetter, which improves the speed when loading paths mainly on iOS, also:- Deprecate
AssetPathEntity.assetCount. - Remove
FilterOptionGroup.containsEmptyAlbum.
- Deprecate
Improvements
- Improve assets change notify with better methods signature and checks. (#790)
- Add
PermissionState.hasAccessgetter for better condition judgement. (#792) - Remove unnecessary assets fetch in
getMediaUrlon iOS. (#793) - Improve
AssetEntity.obtainForNewPropertieson iOS. (#794) - Improve
MD5Utilson iOS. (#802) - Improve cache container mutations on iOS. (#803)
- Improve assets count assignments. (#804)
- Improve cursors conversion on Android. (#806)
Fixes
- Purpose video creation correctly on iOS. (#791)
- Mark assets as favorite on iOS. (#794)
- Fix not replied method calls (#800).
- Fix invalid
RELATIVE_PATHobtains with cursors on Android Q-. (#810)
2.1.4 #
Improvements
- [iOS] Check
canPerformEditOperationbefore performing change requests. (#782)
Fixes
- [Android] Fix
orientationmissing during conversions. (#783)
2.1.3 #
Improvements
- Expose
PhotoManager.plugin. (#778)
Fixes
- Fix
forceOldApinot well-called. (#778) - Fix invalid type cast with
AssetEntity.exists. (#777)
2.1.2 #
Improvements
- Correct
PermissionRequestOptiontypo with a class type alias. Which also raised the Dart SDK constraint to2.13.0. - Catch throwables when reading EXIF.
- Improve Live-Photos filtering.
2.1.1 #
Improvements
- Protect cursors convert on Android. (#761)
- Present exceptions in the image provider when debugging. (#766)
Fixes
- Fix
ACCESS_MEDIA_LOCATIONchecks on Android. (#765)
2.1.0+2 #
Improvements
- Support Flutter 3.
2.0.9 #
Improvements
- (Not working) Ignore the null-aware operator for
PaintingBinding's instance in order to solve the coming lint issues with Flutter 2.13, and keeps the compatibility of previous Flutter versions. - Fix dart docs generate issues.
2.0.8 #
Improvements
- Using
ContentResolveras much as possible on Android. (#755)
2.0.7 #
Fixes
- Fix assets pagination issues on Android 29+. (#748)
2.0.6 #
Fixes
- Fix file caches clearing on iOS. (#743)
2.0.5 #
Improvements
- Improve
AssetEntity.titleAsync's implementation on iOS. (#740)
2.0.4 #
Fixes
- Fix invalid
InputStreamwhen saving images on Android. (#736)
2.0.3 #
Improvements
- Improve
getMediaUrlon iOS. - Read orientation when saving images on Android. (#730)
- Improve generic type casts on Android. (#732)
2.0.2 #
Fixes
- Ensure file exists before reading EXIF on Android. (#728)
2.0.1 #
Improvements
- Update legacy external storage exception on Android.
Fixes
- Predicate more precise permissions requirements on Android <29. (#723)
2.0.0 #
A major version release for performance improvements, new features, issues fixed, and breaking changes. Also, the LICENSE has been updated with the new author FlutterCandies.
Breaking Changes
See the Migration Guide for details of breaking changes.
Features
- Add
mimeTypeAsync. (#717) - Add
ThumbnailSize. (#709) - Add
DurationConstraint.allowNullable. (#681) - Introduce
AssetEntityImageProvider. (#669, #709) - Support "Live Photos" with obtaining and filtering. (#667, #670, #673, #719)
- Support to obtain the first frame for the video thumbnail on Android. (#658)
- Allow plugin to be mocked/overridden with tests. (#703)
Improvements
- Improve path modified injection and asset count fetching. (#712)
- Make all entities immutable. (#708)
- Improve the performance when using the
filegetter on iOS. (#705) - Force legacy storage on Android Q. (#701)
- Enhance request types filtering.
- Compile for API 31 on Android.
- Throw when obtaining media URL that asset is not locally available on iOS.
- Retrieve width/height from ExifInterface for fallback on Android. (#686)
- Request
WRITE_EXTERNAL_STORAGEonly when needed. (#675) - Provided a single-page example. (#672)
- Improve the default sort order on all platforms. (#659)
- Add equality comparison for various classes. (#657)
- Run Glide on the current thread on Android. (#656)
- Improve thread pool on Android. (#637)
- Improved all documents and code formats. (#626, #660, #664, #671)
- Reorganized all internal structures.
- Rename org to
com.fluttercandies. (#624) ImageScanner->PhotoManager. (#611)
Fixes
- Fix
Activityleaks when detached on Android. (#716) - Fix potential NPE when moving assets on Android.
- Fix edited images/videos are not returned correctly on iOS. (#622, #636)
- Fix
titleargument causes saving methods failed. (#619, #635) - Fix
PhotoManager.editor.copyAssetToPathreturnsnull. (#619) - Fix sort order issues on iOS/macOS. (#603, #655)
1.3.10 #
Improvements
- Allow all kinds of
PHAssetCollectionwhich should expand the support for shared albums. (#641)
1.3.9+1 #
Fixes
- Fix compile error on Xcode 12 for iOS 14. (#630)
1.3.9 #
Fixes
- Fix
presentLimitedissues on iOS 14 real devices. (#627)
1.3.8 #
Improvements
- Improve sort orders on all platforms. (#623)
1.3.7 #
Improvements
- Improve sort orders on iOS. (#620)
1.3.6 #
Improvements
- Prettify file name on iOS. (#615)
1.3.5 #
Improvements
- Support
presentLimitedwith the new API on iOS 15. (#609)
1.3.4 #
Improvements
- Obtain more albums on iOS/macOS. (#601)
1.3.3 #
Improvements
- Loosen comparison between
AssetEntitys.
1.3.2 #
Improvements
- Apply more fields to compare between entities.
1.3.1 #
Fixes
fetchPathPropertiesreturned wrongisAllon iOS. (#580)updateTimeCondnot constructed correctly withFilterOptionGroup.
1.3.0 #
Improvements
- Repo cleanup.
Fixes
- Removed recursive calls with progress handler. (#577)
We're bumping the minor version because we've achieved recent goals and applied multiple Fixes which make this plugin as the most solid ever.
1.2.9 #
Features
- Add orientated getters. (#575)
1.2.8 #
Fixes
- Saving methods return null. (#573)
1.2.7 #
Improvements
- Improve
AssetEntity.getMediaUrl()behaviors.
Fixes
- Merge all fields for
FilterOptionGroup. - Make
AssetEntity.isLocallyAvailableas aFuturegetter.
1.2.6+1 #
Fixes
- Apply further fix to #559 .
- Repo cleanup.
1.2.6 #
Fixes
- #558
- #559
- #560
1.2.5 #
Fixes
- Fix
opensetting for macOS. - Fix
setLogfor iOS and macOS.
1.2.4 #
Fixes
saveImagemethod missing file extension for the fallback title.openSettingsmethod.
1.2.3 #
Features
- Add assets count change when notify on iOS.
- Add some properties and methods for change notify.
Fixes
- Change notify issue on remove callback.
- Reply result for
presentLimitedmethod.
1.2.2 #
Fixes
- Add request permissions result listener when activity re-attached. (#515)
1.2.1 #
Fixes
- An error of iOS. See #509 and #510 .
1.2.0 #
Features
- Add
requestPermissionExtendcode to support iOS 14 permission. - Add update limited photos method for iOS 14.
Fixes
- Permissions dialog of launch on old iOS versions. (#503)
1.1.6 #
- The
MEDIA_LOCATIONpermission of android can be removed through configuration.
1.1.5 #
- Revert #478 .
- Fix thumbnail size of the entity on iOS/macOS.
1.1.4 #
- Merged #478 .
1.1.3 #
- Merged the code of macOS and ios.
1.1.2 #
- Updated the code in the macOS part.
1.1.1 #
Fixes
thumbWithSizeofAssetEntity.
1.1.0 #
Features
modifiedofAssetPathEntity.- Update constructor of
FilterOptionGroup.
Fixes
- Order option of the
FilterOptionGroup.
1.0.6 #
- Add relative path when saving files to the MediaStore on Android 29+ (#462)
- Fix deleteWithIds typecast issue with Android 29- (#460)
1.0.4 #
- Add mime type for android.
1.0.3 #
- Fix serious code usage issue in convert utils.
1.0.2 #
- Improve the constructor for
AssetEntity.
1.0.1 #
- Fix orientation bug.
1.0.0 #
Breaking Changes
- Migrate to null safety.
- Correct type in
PMRequestState.
0.6.0 #
Breaking Changes
- Support multiple sorting conditions, and the
ascofDateTimeCondis removed.
Features
- Support android API 30.
- Support show empty album in iOS (#365).
- User can ignore check permission(User can choose favorite permission plugin, but at the same time user have to bear the risks corresponding to the permission).
- Support clean file cache.
- Experimental
- Preload image (Use
PhotoCachingManagerapi.)
- Preload image (Use
- Add
OrderOptionas sort condition. The option default value is order by create date desc; - Support icloud asset progress.
Fixes
- #362
- Delete assets in androidQ.
- Edited image data in iOS.
- Fix delete error in androidR.
0.5.8 #
Fixes
- Delete assets in androidQ.
0.5.7 #
Fixes
- Audio asset error for androidQ. See #340 and #341 .
0.5.6 #
- Fix save image with path for android.
0.5.5+1 #
- Remove verbose log.
0.5.5 #
- Add
mergeforFilterOptionGroupandFilterOption.
0.5.4 #
- Add
copyWithforFilterOption.
0.5.3+1 #
- Support android v2 model.
0.5.3 #
Fixes
- Cannot get audio problem in androidQ.
0.5.2 #
- Support macOS.
- From the version, Starting from this version, 1.9 or earlier versions are not supported.
0.5.1 #
Features
- Save image asset with file path.
- Copy asset to another album.
- Create AssetEntity with id.
- Create AssetPathEntity from id.
- Only iOS
- Create folder or album.
- Remove assets in album.
- Delete folder or album.
- Favorite asset.
- Only android
- move asset to another path.
- Remove all non-existing rows.
- add
relativePathfor android.
Improvements
- Modified
AssetEntity.file's behavior on iOS, it will return a picture in jpg format instead of heic/gif/png currently. Now more in line with the description in the doc, this is suitable for uploading images (theoretically, no Exif information will be included). - Update android change media url from file scheme to content scheme.
- Clean up some unused code.
Fixes
- Problem of AssetPathEntity.refreshPathProperties.
- Open setting in iOS.
- Edited asset in iOS.
- Audio properties of FilterOption.
- Android onlyAll assetCount bug.
0.5.0 #
Breaking Changes
- Add date condition to filter datetime
- Add class
DateTimeCond - Add
dateTimeCondtoFilterOptionGroup - Remove
fetchDateTimefromgetAssetPathList - Remove param
dtfromAssetPathEntity.refreshPathProperties, and addrefreshPathPropertiesparams to the method. - Split video filter and image filter.
Features
- Add
getSubPathEntitiesforAssetPathEntity. - Add
qualityforAssetEntity.thumbDataWithSize. - Add
orientationforAssetEntity. - Add
onlyAllforgetAssetPathList. - Support audio type(Only android, iOS Photos have no audio)
Improvements
- iOS code is running background thread.
- getThumb is running in background thread.
Fixes
- exists error on android.
- use edited origin file on iOS.
- galleryName maybe is null in android.
- thumb of android 10.
0.4.8 #
Fixes
- #169
- #170
0.4.7 #
Features
- Add
FilterOptionfor methodgetAssetPathList.
0.4.6 #
Fixes
- originFile of
AssetEntity
Features
- location(
latitude,longitude) ofAssetEntity titleofAssetEntityoriginBytesofAssetEntity- param
formatinthumbDataWithSizeof assetEntity.
0.4.5 #
Fixes
- Can't get thumb/file of video on androidQ.
0.4.4 #
Fixes
- Compatibility code, when the width and height of the video is empty, it can still be scanned.
- Add a default value to
typeofgetAssetPathList.
0.4.3 #
Features
- Delete asset.
- Add Image.
- Add Video.
- Add modifyDate property.
- Fix videoDuration error.
Fixes
- CreateDate error.
0.4.2 #
- Fix ios get full file size error.
0.4.1 #
- Fix ios build error.
0.4.0 #
Breaking Changes
- Some properties in the entity were modified from asynchronous to synchronous.
- Remove
isCacheparams. Now,getAssetPathListwill reload info everytime. If user want to cacheList<AssetPathEntity>, then user must do it manually.
Features
- Added a method
getAssetListPagedfor paging loading resources to path. The paging implementation is lazy loading, that is, the resource corresponding information is loaded when requested. The entity corresponding to the path is no longer placed in the memory, but is implemented by PHPhoto (ios) and sqlite's limit offset (android). - Support AndroidQ privacy.
0.3.5 #
- Fix iCloud image problem.
0.3.4 #
- Support flutter 1.6.0 android's thread changes for channel.
0.3.3 #
- Fix customizing album containing folders on iOS.
0.3.2 #
AssetEntityadd property:originFile.
0.3.1 #
AssetEntityadd property:exists.
0.3.0 #
Breaking Changes
- Support Android X. This shouldn't result in any functional changes, but it requires any Android apps using this plugin to also migrate if they're using the original support library.
Features
- Add a method to create
AssetEntitywith id. - Add
isCachefor methodgetImageAsset,getVideoAssetorgetAssetPathList. - Add observer for photo change.
- Add field
createTimeforAssetEntity.
Fixes
- Fix NPE for image crash on android.
0.2.1 #
- Add
getVideoAssetandgetImageAssetto load video / image.
0.2.0 #
- Add asset size field.
- Add cache release method.
0.1.10 #
- Fix when number of photo/video is 0, will crash.
0.1.9 #
- Add video duration.
0.1.8 #
- Sort asset by date.
0.1.7 #
- Fix Android's latest picture won't be found.
- Update gradle wrapper version.
- Update kotlin version.
0.1.6 #
- Fix Android to get pictures that are empty bug.
0.1.5 #
- Support ios icloud image and video.
0.1.4 #
- Update all path
hasVideoproperty.
0.1.3 #
- Add a params to help user disable get video.
0.1.2 #
- iOS get video file is async.
0.1.1 #
- Fix 'ios video full file is a jpg' problem.
0.1.0 #
- Support video in android.
- Change API from ImageXXXX to AssetXXXX.
0.0.3 #
- Update for the issue #1. (NPE when request other permission on android)
0.0.2 #
- Update README.
0.0.1 #
First version.
- API for photo.