Releases: anggrayudi/SimpleStorage
Releases · anggrayudi/SimpleStorage
1.3.0
Features
- Added file & folder pickers support for API 19
1.2.2
Breaking Changes
- Downgrade to Kotlin 1.5 to support DexGuard 8
1.2.1
Fixes
- Fixed lint error on Gradle 7.1 (see fm-sys/snapdrop-android#171)
1.2.0
Features
- Increase target SDK to 31
1.1.0
Features
- Added extension functions:
DocumentFile.findParent()
to overcomeDocumentFile.parentFile
drawbacks.DocumentFile.childOf()
List<MediaFile>.compressToZip()
MediaFile.decompressZip()
Breaking Changes
ZipCompressionCallback
andZipDecompressionCallback
now requires generic data type, i.e.DocumentFile
orMediaFile
- Added ProGuard rules to keep fields in
DocumentFile
. See storage/consumer-rules.pro
Fixes
- Fixed issue #79
- Fixed the sample code
1.0.0
Features
- Added ZIP compression & decompression (feature #49):
List<DocumentFile>.compressToZip()
DocumentFile.decompressZip()
- Added functions:
MediaStoreCompat.deleteEmptyMediaFiles()
MediaFile.presentsInSafDatabase
MediaFile.hasZeroLength
MediaFile.presentsInSafDatabase
Breaking Changes
- Renamed extension function
closeStream()
tocloseStreamQuietly()
(issue #60) FileDescription.mimeType
now returns appropriate mime type. Usingimage/*
or*/*
will returnapplication/octet-stream
- Deleted
MediaFile.exists
MediaFile.isEmpty
now returns true if the file does not exists or has zero length.MediaFile.renameTo()
now throwsUnsupportedOperationException
on Android 10+.
Fixes
- Fixed issue #76
- More carefully when substring file extension. Thanks to
MimeType.hasExtension()
0.14.0
0.13.0
Features
- Request storage access for specific folder with
SimpleStorageHelper.requestStorageAccess(expectedBasePath)
on API 30+ - Create media based on full path with
MediaStoreCompat.createMedia()
Breaking Changes
- Storage runtime permission no longer prompts on API 29+
Fixes
0.12.0
0.11.1
Fixes
- Selecting the root path of external storage on Android 10 (folder picker) now grants access automatically.
- Better wording for requesting root path access.