aws_uploader 0.1.0
aws_uploader: ^0.1.0 copied to clipboard
A Flutter plugin to upload any file to AWS S3 using Cognito Developer Identity (token + identityId). Supports real-time progress streaming, upload cancellation, and multi-part uploads on Android and iOS.
Changelog #
All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
0.1.0 - 2026-06-04 #
Added #
startFileUpload— replacesstartImgUpload; now accepts any file type (images, video, audio, PDF, documents, archives, etc.)AWSUploadResult— structured return type withuploadId,url,bucket,key,fileName,filePath,success, anderrorMessageAWSUploadResult.failure()— factory for failed results;startFileUploadnever throws, checkresult.successinsteadAWSUploadProgressEvent— typed stream event withAWSUploadStatusenum (progress,completed,failed)- Auto MIME type detection from file extension on both Android and iOS; optional
contentTypeparameter to override ios/Package.swift— Swift Package Manager support for iOS (usesaws-amplify/aws-sdk-ios-spmbinary XCFrameworks)
Changed #
imageUploadFolderparameter renamed touploadFolderto reflect support for all file types- Progress stream type changed from
Stream<Map<String, dynamic>>toStream<AWSUploadProgressEvent> startFileUploadreturnsAWSUploadResultinstead of a plainString- Content type is no longer hardcoded to
image/jpeg - Minimum Flutter constraint updated to
>=3.19.0
Fixed #
- iOS: re-registering
AWSS3TransferUtilitywith the same key on every upload replaced the existing backgroundNSURLSession, causing all uploads after the first to hang silently with no events or errors; the utility is now registered once per app session - iOS: upload errors now correctly resolve the Flutter method result with
FlutterError(previously the future would hang on failure) - Android: added
resultSentguard to preventMethodChannel.Resultbeing called twice when bothFAILEDstate andonErrorfire - Android:
FAILEDtransfer state now callsresult.error()so the Dart future resolves instead of silently completing