-
public final class DocumentFileUtils
-
-
Field Summary
Fields Modifier and Type Field Description private final static BooleanisTreeDocumentFileprivate final static BooleanisExternalStorageDocumentprivate final static BooleanisDownloadsDocumentprivate final static BooleanisDocumentsDocumentprivate final static BooleanisMediaDocumentprivate final static Stringidprivate final static StringrootIdprivate final static StringfullNameprivate final static BooleanisRawFileprivate final static StringbaseNameprivate final static Stringextensionprivate final static StringmimeTypeprivate final static StringmimeTypeByFileName
-
Method Summary
Modifier and Type Method Description final BooleangetIsTreeDocumentFile()final BooleangetIsExternalStorageDocument()final BooleangetIsDownloadsDocument()final BooleangetIsDocumentsDocument()final BooleangetIsMediaDocument()final StringgetId()final StringgetRootId()final StringgetFullName()final BooleangetIsRawFile()final StringgetBaseName()final StringgetExtension()final StringgetMimeType()final StringgetMimeTypeByFileName()final static StringgetStorageId(DocumentFile $self, Context context)ID of this storage. final static BooleanisReadOnly(DocumentFile $self, Context context)final static BooleanisExternalStorageManager(DocumentFile $self, Context context)final static BooleaninKitkatSdCard(DocumentFile $self)final static BooleaninSameMountPointWith(DocumentFile $self, Context context, DocumentFile file)final static BooleanisEmpty(DocumentFile $self, Context context)final static UnitgetProperties(DocumentFile $self, Context context, FileProperties.CalculationCallback callback)Similar to Get Info on MacOS or File Properties in Windows. final static StorageTypegetStorageType(DocumentFile $self, Context context)Returns nullif this DocumentFile is picked from Intent.ACTION_OPEN_DOCUMENT or Intent.ACTION_CREATE_DOCUMENTfinal static BooleaninInternalStorage(DocumentFile $self, Context context)final static BooleaninPrimaryStorage(DocumentFile $self, Context context)trueif this file located in primary storage, i.e.final static <ERROR CLASS>inSdCardStorage(DocumentFile $self, Context context)trueif this file located in SD Cardfinal static BooleaninDataStorage(DocumentFile $self, Context context)final static FiletoRawFile(DocumentFile $self, Context context)Please notice that accessing files with File only works on app private directory since Android 10. final static DocumentFiletoRawDocumentFile(DocumentFile $self, Context context)final static DocumentFiletoTreeDocumentFile(DocumentFile $self, Context context)final static MediaFiletoMediaFile(DocumentFile $self, Context context)final static DocumentFilechangeName(DocumentFile $self, Context context, String newBaseName, String newExtension)It will try converting androidx.documentfile.provider.SingleDocumentFile to androidx.documentfile.provider.TreeDocumentFile if possible, because SingleDocumentFilecan't do rename operation.final static DocumentFilechangeName(DocumentFile $self, Context context, String newBaseName)It will try converting androidx.documentfile.provider.SingleDocumentFile to androidx.documentfile.provider.TreeDocumentFile if possible, because SingleDocumentFilecan't do rename operation.final static DocumentFilechild(DocumentFile $self, Context context, String path, Boolean requiresWriteAccess)It's faster than DocumentFile.findFile final static DocumentFilechild(DocumentFile $self, Context context, String path)It's faster than DocumentFile.findFile final static DocumentFilequickFindRawFile(DocumentFile $self, String name)final static DocumentFilequickFindTreeFile(DocumentFile $self, Context context, ContentResolver resolver, String name)It's faster than DocumentFile.findFile. final static BooleanshouldWritable(DocumentFile $self, Context context, Boolean requiresWriteAccess)final static <ERROR CLASS>takeIfWritable(DocumentFile $self, Context context, Boolean requiresWriteAccess)final static BooleancheckRequirements(DocumentFile $self, Context context, Boolean requiresWriteAccess, Boolean considerRawFile)final static StringgetBasePath(DocumentFile $self, Context context)final static StringgetRootPath(DocumentFile $self, Context context)Root path of this file. final static <ERROR CLASS>getRelativePath(DocumentFile $self, Context context)final static StringgetAbsolutePath(DocumentFile $self, Context context)For file in SD Card =>
/storage/6881-2249/Music/song.mp3For file in external storage =>
/storage/emulated/0/Music/song.mp3
final static <ERROR CLASS>getSimplePath(DocumentFile $self, Context context)final static DocumentFilefindParent(DocumentFile $self, Context context, Boolean requiresWriteAccess)final static DocumentFilefindParent(DocumentFile $self, Context context)final static DocumentFilerecreateFile(DocumentFile $self, Context context)Delete this file and create new empty file using previous filenameandmimeType.final static DocumentFilegetRootDocumentFile(DocumentFile $self, Context context, Boolean requiresWriteAccess)final static DocumentFilegetRootDocumentFile(DocumentFile $self, Context context)final static BooleancanModify(DocumentFile $self, Context context)final static BooleanisWritable(DocumentFile $self, Context context)Use it, because DocumentFile.canWrite is unreliable on Android 10. final static BooleanisRootUriPermissionGranted(DocumentFile $self, Context context)final static StringgetFormattedSize(DocumentFile $self, Context context)final static StringautoIncrementFileName(DocumentFile $self, Context context, String filename)Avoid duplicate file name. final static DocumentFilecreateBinaryFile(DocumentFile $self, Context context, String name, CreateMode mode)Useful for creating temporary files. final static DocumentFilecreateBinaryFile(DocumentFile $self, Context context, String name)Useful for creating temporary files. final static DocumentFilemakeFile(DocumentFile $self, Context context, String name, String mimeType, CreateMode mode, FileConflictCallback<DocumentFile> onConflict)Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. final static DocumentFilemakeFile(DocumentFile $self, Context context, String name, String mimeType, CreateMode mode)Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. final static DocumentFilemakeFile(DocumentFile $self, Context context, String name, String mimeType)Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. final static DocumentFilemakeFile(DocumentFile $self, Context context, String name)Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. final static DocumentFilemakeFolder(DocumentFile $self, Context context, String name, CreateMode mode)final static DocumentFilemakeFolder(DocumentFile $self, Context context, String name)final static DocumentFiletoWritableDownloadsDocumentFile(DocumentFile $self, Context context)Use this function if you cannot create or read file/folder in downloads directory. final static List<DocumentFile>findFiles(DocumentFile $self, Array<String> names, DocumentFileType documentType)final static DocumentFilefindFolder(DocumentFile $self, String name)final static DocumentFilefindFileLiterally(DocumentFile $self, String name)Expect the file is a file literally, not a folder. final static List<DocumentFile>search(DocumentFile $self, Boolean recursive, DocumentFileType documentType, Array<String> mimeTypes, String name, Regex regex)final static List<DocumentFile>search(DocumentFile $self, Boolean recursive, DocumentFileType documentType, Array<String> mimeTypes, String name)final static List<DocumentFile>search(DocumentFile $self, Boolean recursive, DocumentFileType documentType, Array<String> mimeTypes)final static List<DocumentFile>search(DocumentFile $self, Boolean recursive, DocumentFileType documentType)final static List<DocumentFile>search(DocumentFile $self, Boolean recursive)final static List<DocumentFile>search(DocumentFile $self)final static BooleandeleteRecursively(DocumentFile $self, Context context, Boolean childrenOnly)final static BooleandeleteRecursively(DocumentFile $self, Context context)final static BooleanforceDelete(DocumentFile $self, Context context, Boolean childrenOnly)final static BooleanforceDelete(DocumentFile $self, Context context)final static BooleandeleteEmptyFolders(DocumentFile $self, Context context)final static OutputStreamopenOutputStream(DocumentFile $self, Context context, Boolean append)final static OutputStreamopenOutputStream(DocumentFile $self, Context context)final static InputStreamopenInputStream(DocumentFile $self, Context context)final static IntentopenFileIntent(DocumentFile $self, Context context, String authority)final static BooleanhasParent(DocumentFile $self, Context context, DocumentFile parent)final static BooleanchildOf(DocumentFile $self, Context context, DocumentFile parent)final static UnitcompressToZip(List<DocumentFile> $self, Context context, DocumentFile targetZipFile, Boolean deleteSourceWhenComplete, ZipCompressionCallback<DocumentFile> callback)Use Zip4j if you want to protect the ZIP file with password. final static UnitdecompressZip(DocumentFile $self, Context context, DocumentFile targetFolder, ZipDecompressionCallback<DocumentFile> callback)It can't unzip password-protected archives. final static UnitmoveTo(List<DocumentFile> $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, MultipleFileCallback callback)final static UnitcopyTo(List<DocumentFile> $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, MultipleFileCallback callback)final static UnitmoveFolderTo(DocumentFile $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, String newFolderNameInTargetPath, FolderCallback callback)final static UnitcopyFolderTo(DocumentFile $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, String newFolderNameInTargetPath, FolderCallback callback)final static UnitcopyFileTo(DocumentFile $self, Context context, File targetFolder, FileDescription fileDescription, FileCallback callback)final static UnitcopyFileTo(DocumentFile $self, Context context, String targetFolderAbsolutePath, FileDescription fileDescription, FileCallback callback)final static UnitcopyFileTo(DocumentFile $self, Context context, DocumentFile targetFolder, FileDescription fileDescription, FileCallback callback)final static UnitcopyFileTo(DocumentFile $self, Context context, MediaFile targetFile, FileCallback callback)final static UnitmoveFileTo(DocumentFile $self, Context context, File targetFolder, FileDescription fileDescription, FileCallback callback)final static UnitmoveFileTo(DocumentFile $self, Context context, String targetFolderAbsolutePath, FileDescription fileDescription, FileCallback callback)final static UnitmoveFileTo(DocumentFile $self, Context context, DocumentFile targetFolder, FileDescription fileDescription, FileCallback callback)final static UnitmoveFileTo(DocumentFile $self, Context context, MediaFile targetFile, FileCallback callback)final static UnitcopyFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)final static UnitcopyFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)final static UnitcopyFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)final static UnitcopyFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)final static UnitmoveFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)final static UnitmoveFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)final static UnitmoveFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)final static UnitmoveFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)-
-
Method Detail
-
getIsTreeDocumentFile
final Boolean getIsTreeDocumentFile()
-
getIsExternalStorageDocument
final Boolean getIsExternalStorageDocument()
-
getIsDownloadsDocument
final Boolean getIsDownloadsDocument()
-
getIsDocumentsDocument
final Boolean getIsDocumentsDocument()
-
getIsMediaDocument
final Boolean getIsMediaDocument()
-
getFullName
final String getFullName()
-
getIsRawFile
final Boolean getIsRawFile()
-
getBaseName
final String getBaseName()
-
getExtension
final String getExtension()
-
getMimeType
final String getMimeType()
-
getMimeTypeByFileName
final String getMimeTypeByFileName()
-
getStorageId
final static String getStorageId(DocumentFile $self, Context context)
ID of this storage. For external storage, it will return PRIMARY, otherwise it is a SD Card and will return integers like
6881-2249. However, it will return emptyStringif this DocumentFile is picked from Intent.ACTION_OPEN_DOCUMENT or Intent.ACTION_CREATE_DOCUMENT
-
isReadOnly
final static Boolean isReadOnly(DocumentFile $self, Context context)
-
isExternalStorageManager
final static Boolean isExternalStorageManager(DocumentFile $self, Context context)
-
inKitkatSdCard
final static Boolean inKitkatSdCard(DocumentFile $self)
-
inSameMountPointWith
final static Boolean inSameMountPointWith(DocumentFile $self, Context context, DocumentFile file)
-
isEmpty
final static Boolean isEmpty(DocumentFile $self, Context context)
-
getProperties
final static Unit getProperties(DocumentFile $self, Context context, FileProperties.CalculationCallback callback)
Similar to Get Info on MacOS or File Properties in Windows. Use Thread.interrupt to cancel the proccess and it will trigger FileProperties.CalculationCallback.onCanceled
-
getStorageType
final static StorageType getStorageType(DocumentFile $self, Context context)
Returns
nullif this DocumentFile is picked from Intent.ACTION_OPEN_DOCUMENT or Intent.ACTION_CREATE_DOCUMENT
-
inInternalStorage
final static Boolean inInternalStorage(DocumentFile $self, Context context)
-
inPrimaryStorage
final static Boolean inPrimaryStorage(DocumentFile $self, Context context)
trueif this file located in primary storage, i.e. external storage. All files created by DocumentFile.fromFile are always treated from external storage.
-
inSdCardStorage
final static <ERROR CLASS> inSdCardStorage(DocumentFile $self, Context context)
trueif this file located in SD Card
-
inDataStorage
final static Boolean inDataStorage(DocumentFile $self, Context context)
-
toRawFile
final static File toRawFile(DocumentFile $self, Context context)
Please notice that accessing files with File only works on app private directory since Android 10. You had better to stay using DocumentFile.
-
toRawDocumentFile
final static DocumentFile toRawDocumentFile(DocumentFile $self, Context context)
-
toTreeDocumentFile
final static DocumentFile toTreeDocumentFile(DocumentFile $self, Context context)
-
toMediaFile
final static MediaFile toMediaFile(DocumentFile $self, Context context)
-
changeName
final static DocumentFile changeName(DocumentFile $self, Context context, String newBaseName, String newExtension)
It will try converting androidx.documentfile.provider.SingleDocumentFile to androidx.documentfile.provider.TreeDocumentFile if possible, because
SingleDocumentFilecan't do rename operation. It is also a safer option compared to androidx.documentfile.provider.DocumentFile.renameTo, becauserenameTo()has some issues prior to scoped storage on SD card path.
-
changeName
final static DocumentFile changeName(DocumentFile $self, Context context, String newBaseName)
It will try converting androidx.documentfile.provider.SingleDocumentFile to androidx.documentfile.provider.TreeDocumentFile if possible, because
SingleDocumentFilecan't do rename operation. It is also a safer option compared to androidx.documentfile.provider.DocumentFile.renameTo, becauserenameTo()has some issues prior to scoped storage on SD card path.
-
child
final static DocumentFile child(DocumentFile $self, Context context, String path, Boolean requiresWriteAccess)
It's faster than DocumentFile.findFile
- Parameters:
path- single file name or file path.
-
child
final static DocumentFile child(DocumentFile $self, Context context, String path)
It's faster than DocumentFile.findFile
- Parameters:
path- single file name or file path.
-
quickFindRawFile
final static DocumentFile quickFindRawFile(DocumentFile $self, String name)
-
quickFindTreeFile
final static DocumentFile quickFindTreeFile(DocumentFile $self, Context context, ContentResolver resolver, String name)
It's faster than DocumentFile.findFile.
Must set ContentResolver as additional parameter to improve performance.
-
shouldWritable
final static Boolean shouldWritable(DocumentFile $self, Context context, Boolean requiresWriteAccess)
-
takeIfWritable
final static <ERROR CLASS> takeIfWritable(DocumentFile $self, Context context, Boolean requiresWriteAccess)
-
checkRequirements
final static Boolean checkRequirements(DocumentFile $self, Context context, Boolean requiresWriteAccess, Boolean considerRawFile)
-
getBasePath
final static String getBasePath(DocumentFile $self, Context context)
-
getRootPath
final static String getRootPath(DocumentFile $self, Context context)
Root path of this file.
For file picked from Intent.ACTION_OPEN_DOCUMENT or Intent.ACTION_CREATE_DOCUMENT, it will return empty
StringFor file stored in external or primary storage, it will return SimpleStorage.externalStoragePath.
For file stored in SD Card, it will return something like
/storage/6881-2249
-
getRelativePath
final static <ERROR CLASS> getRelativePath(DocumentFile $self, Context context)
-
getAbsolutePath
final static String getAbsolutePath(DocumentFile $self, Context context)
For file in SD Card =>
/storage/6881-2249/Music/song.mp3For file in external storage =>
/storage/emulated/0/Music/song.mp3
If you want to remember file locations in database or preference, please use this function. When you reopen the file, just call DocumentFileCompat.fromFullPath
-
getSimplePath
final static <ERROR CLASS> getSimplePath(DocumentFile $self, Context context)
-
findParent
final static DocumentFile findParent(DocumentFile $self, Context context, Boolean requiresWriteAccess)
-
findParent
final static DocumentFile findParent(DocumentFile $self, Context context)
-
recreateFile
final static DocumentFile recreateFile(DocumentFile $self, Context context)
Delete this file and create new empty file using previous
filenameandmimeType. It cannot be applied if current DocumentFile is a directory.
-
getRootDocumentFile
final static DocumentFile getRootDocumentFile(DocumentFile $self, Context context, Boolean requiresWriteAccess)
-
getRootDocumentFile
final static DocumentFile getRootDocumentFile(DocumentFile $self, Context context)
-
canModify
final static Boolean canModify(DocumentFile $self, Context context)
-
isWritable
final static Boolean isWritable(DocumentFile $self, Context context)
Use it, because DocumentFile.canWrite is unreliable on Android 10. Read this issue
-
isRootUriPermissionGranted
final static Boolean isRootUriPermissionGranted(DocumentFile $self, Context context)
-
getFormattedSize
final static String getFormattedSize(DocumentFile $self, Context context)
-
autoIncrementFileName
final static String autoIncrementFileName(DocumentFile $self, Context context, String filename)
Avoid duplicate file name.
-
createBinaryFile
final static DocumentFile createBinaryFile(DocumentFile $self, Context context, String name, CreateMode mode)
Useful for creating temporary files. The extension is
*.bin
-
createBinaryFile
final static DocumentFile createBinaryFile(DocumentFile $self, Context context, String name)
Useful for creating temporary files. The extension is
*.bin
-
makeFile
final static DocumentFile makeFile(DocumentFile $self, Context context, String name, String mimeType, CreateMode mode, FileConflictCallback<DocumentFile> onConflict)
Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. Creating files in API 28- with
createFile("my video.mp4", "video/mp4")will createmy video.mp4, whereas API 29+ will createmy video.mp4.mp4. This function helps you to fix this kind of bug.- Parameters:
name- you can inputMy Video,My Video.mp4orMy Folder/Sub Folder/My Video.mp4mimeType- use MimeType.UNKNOWN if you're not sure about the file typeonConflict- when this callback is set andmodeis not CreateMode.CREATE_NEW, then the user will be asked for resolution if conflict happens
-
makeFile
final static DocumentFile makeFile(DocumentFile $self, Context context, String name, String mimeType, CreateMode mode)
Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. Creating files in API 28- with
createFile("my video.mp4", "video/mp4")will createmy video.mp4, whereas API 29+ will createmy video.mp4.mp4. This function helps you to fix this kind of bug.- Parameters:
name- you can inputMy Video,My Video.mp4orMy Folder/Sub Folder/My Video.mp4mimeType- use MimeType.UNKNOWN if you're not sure about the file type
-
makeFile
final static DocumentFile makeFile(DocumentFile $self, Context context, String name, String mimeType)
Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. Creating files in API 28- with
createFile("my video.mp4", "video/mp4")will createmy video.mp4, whereas API 29+ will createmy video.mp4.mp4. This function helps you to fix this kind of bug.- Parameters:
name- you can inputMy Video,My Video.mp4orMy Folder/Sub Folder/My Video.mp4mimeType- use MimeType.UNKNOWN if you're not sure about the file type
-
makeFile
final static DocumentFile makeFile(DocumentFile $self, Context context, String name)
Similar to DocumentFile.createFile, but adds compatibility on API 28 and lower. Creating files in API 28- with
createFile("my video.mp4", "video/mp4")will createmy video.mp4, whereas API 29+ will createmy video.mp4.mp4. This function helps you to fix this kind of bug.- Parameters:
name- you can inputMy Video,My Video.mp4orMy Folder/Sub Folder/My Video.mp4
-
makeFolder
final static DocumentFile makeFolder(DocumentFile $self, Context context, String name, CreateMode mode)
- Parameters:
name- can inputMyFolderorMyFolder/SubFolder
-
makeFolder
final static DocumentFile makeFolder(DocumentFile $self, Context context, String name)
- Parameters:
name- can inputMyFolderorMyFolder/SubFolder
-
toWritableDownloadsDocumentFile
final static DocumentFile toWritableDownloadsDocumentFile(DocumentFile $self, Context context)
Use this function if you cannot create or read file/folder in downloads directory.
-
findFiles
final static List<DocumentFile> findFiles(DocumentFile $self, Array<String> names, DocumentFileType documentType)
- Parameters:
names- full file names, with their extension
-
findFolder
final static DocumentFile findFolder(DocumentFile $self, String name)
-
findFileLiterally
final static DocumentFile findFileLiterally(DocumentFile $self, String name)
Expect the file is a file literally, not a folder.
-
search
final static List<DocumentFile> search(DocumentFile $self, Boolean recursive, DocumentFileType documentType, Array<String> mimeTypes, String name, Regex regex)
- Parameters:
recursive- walk into sub foldersname- find file name exactlyregex- you can use regex^.*containsName.*\$to search file name that contains specific words
-
search
final static List<DocumentFile> search(DocumentFile $self, Boolean recursive, DocumentFileType documentType, Array<String> mimeTypes, String name)
- Parameters:
recursive- walk into sub foldersname- find file name exactly
-
search
final static List<DocumentFile> search(DocumentFile $self, Boolean recursive, DocumentFileType documentType, Array<String> mimeTypes)
- Parameters:
recursive- walk into sub folders
-
search
final static List<DocumentFile> search(DocumentFile $self, Boolean recursive, DocumentFileType documentType)
- Parameters:
recursive- walk into sub folders
-
search
final static List<DocumentFile> search(DocumentFile $self, Boolean recursive)
- Parameters:
recursive- walk into sub folders
-
search
final static List<DocumentFile> search(DocumentFile $self)
-
deleteRecursively
final static Boolean deleteRecursively(DocumentFile $self, Context context, Boolean childrenOnly)
- Parameters:
childrenOnly-trueto delete the folder contents only
-
deleteRecursively
final static Boolean deleteRecursively(DocumentFile $self, Context context)
-
forceDelete
final static Boolean forceDelete(DocumentFile $self, Context context, Boolean childrenOnly)
- Parameters:
childrenOnly-trueto delete the folder contents only
-
forceDelete
final static Boolean forceDelete(DocumentFile $self, Context context)
-
deleteEmptyFolders
final static Boolean deleteEmptyFolders(DocumentFile $self, Context context)
-
openOutputStream
final static OutputStream openOutputStream(DocumentFile $self, Context context, Boolean append)
- Parameters:
append- iffalseand the file already exists, it will recreate the file.
-
openOutputStream
final static OutputStream openOutputStream(DocumentFile $self, Context context)
-
openInputStream
final static InputStream openInputStream(DocumentFile $self, Context context)
-
openFileIntent
final static Intent openFileIntent(DocumentFile $self, Context context, String authority)
-
hasParent
final static Boolean hasParent(DocumentFile $self, Context context, DocumentFile parent)
-
childOf
final static Boolean childOf(DocumentFile $self, Context context, DocumentFile parent)
-
compressToZip
final static Unit compressToZip(List<DocumentFile> $self, Context context, DocumentFile targetZipFile, Boolean deleteSourceWhenComplete, ZipCompressionCallback<DocumentFile> callback)
Use Zip4j if you want to protect the ZIP file with password. Simple Storage library must be lightweight, so avoid adding external library unless it is really needed.
-
decompressZip
final static Unit decompressZip(DocumentFile $self, Context context, DocumentFile targetFolder, ZipDecompressionCallback<DocumentFile> callback)
It can't unzip password-protected archives. You'll need Zip4j to unzip encrypted archives.
-
moveTo
final static Unit moveTo(List<DocumentFile> $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, MultipleFileCallback callback)
-
copyTo
final static Unit copyTo(List<DocumentFile> $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, MultipleFileCallback callback)
-
moveFolderTo
final static Unit moveFolderTo(DocumentFile $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, String newFolderNameInTargetPath, FolderCallback callback)
-
copyFolderTo
final static Unit copyFolderTo(DocumentFile $self, Context context, DocumentFile targetParentFolder, Boolean skipEmptyFiles, String newFolderNameInTargetPath, FolderCallback callback)
-
copyFileTo
final static Unit copyFileTo(DocumentFile $self, Context context, File targetFolder, FileDescription fileDescription, FileCallback callback)
- Parameters:
fileDescription- Use it if you want to change file name and type in the destination.
-
copyFileTo
final static Unit copyFileTo(DocumentFile $self, Context context, String targetFolderAbsolutePath, FileDescription fileDescription, FileCallback callback)
- Parameters:
targetFolderAbsolutePath- use DocumentFileCompat.buildAbsolutePath to construct the pathfileDescription- Use it if you want to change file name and type in the destination.
-
copyFileTo
final static Unit copyFileTo(DocumentFile $self, Context context, DocumentFile targetFolder, FileDescription fileDescription, FileCallback callback)
- Parameters:
fileDescription- Use it if you want to change file name and type in the destination.
-
copyFileTo
final static Unit copyFileTo(DocumentFile $self, Context context, MediaFile targetFile, FileCallback callback)
- Parameters:
targetFile- create it with MediaStoreCompat, e.g.
-
moveFileTo
final static Unit moveFileTo(DocumentFile $self, Context context, File targetFolder, FileDescription fileDescription, FileCallback callback)
- Parameters:
fileDescription- Use it if you want to change file name and type in the destination.
-
moveFileTo
final static Unit moveFileTo(DocumentFile $self, Context context, String targetFolderAbsolutePath, FileDescription fileDescription, FileCallback callback)
- Parameters:
targetFolderAbsolutePath- use DocumentFileCompat.buildAbsolutePath to construct the pathfileDescription- Use it if you want to change file name and type in the destination.
-
moveFileTo
final static Unit moveFileTo(DocumentFile $self, Context context, DocumentFile targetFolder, FileDescription fileDescription, FileCallback callback)
- Parameters:
fileDescription- Use it if you want to change file name and type in the destination.
-
moveFileTo
final static Unit moveFileTo(DocumentFile $self, Context context, MediaFile targetFile, FileCallback callback)
- Parameters:
targetFile- create it with MediaStoreCompat, e.g.
-
copyFileToDownloadMedia
final static Unit copyFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)
-
copyFileToDownloadMedia
final static Unit copyFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)
-
copyFileToPictureMedia
final static Unit copyFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)
-
copyFileToPictureMedia
final static Unit copyFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)
-
moveFileToDownloadMedia
final static Unit moveFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)
-
moveFileToDownloadMedia
final static Unit moveFileToDownloadMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)
-
moveFileToPictureMedia
final static Unit moveFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback, CreateMode mode)
-
moveFileToPictureMedia
final static Unit moveFileToPictureMedia(DocumentFile $self, Context context, FileDescription fileDescription, FileCallback callback)
-
-
-