flutter_file_info 0.3.0
flutter_file_info: ^0.3.0 copied to clipboard
A Flutter plugin for retrieving detailed file metadata, including native icons assigned by file type.
flutter_file_info #
A Flutter plugin for retrieving detailed file metadata, including system-native file icons. You can retrieve the native icon assigned to a file based on its type, ensuring a consistent visual representation across platforms. Perfect for applications that require access to file details and icons.
Features #
- Access to native file icons.
- Retrieval of detailed file metadata.
Compatibility Chart #
API | Android | iOS | Linux | macOS | Windows | Web |
---|---|---|---|---|---|---|
getFileIconInfo() | ✔️ | ✔️ | ❌ | ✔️ | ✔️ | ❌ |
getFileInfo() | ✔️ | ✔️ | ❌ | ✔️ | ✔️ | ❌ |
iOS Deployment Target #
This plugin requires a minimum iOS deployment target of 13.0. Ensure that your project is configured correctly by following these steps:
-
Update the
Podfile
In the
ios/Podfile
file, set the deployment target:platform :ios, '13.0'
After making this change, run:
cd ios && pod install
-
Update Xcode Project Settings
- Open your project in Xcode (ios/Runner.xcworkspace).
- Navigate to Runner → General.
- In the Deployment Info section, set iOS Deployment Target to 13.0.
These steps ensure that your project is compatible with the required iOS version.
Getting Started #
Usage #
Quick simple usage example:
Get icon info
IconInfo? iconInfo = await FileInfo.instance.getFileIconInfo('path/to/example/file.txt');
Widget _buildFileIcon() {
if (iconInfo == null) return const SizedBox.shrink();
return Image.memory(
iconInfo!.pixelData,
width: iconInfo!.width.toDouble(),
height: iconInfo!.height.toDouble(),
);
}
Get file info
FileMetadata? fileMetadata = await FileInfo.instance.getFileInfo('path/to/example/file.txt');
if (fileMetadata != null) {
print(fileMetadata.fileName); // Output: file.txt
print(fileMetadata.fileExtension); // Output: txt
print(fileMetadata.fileType); // Output: TextDocument
print(fileMetadata.creationTime?.toString()); // Output: 2024-08-01 17:16:26.500018
// ...
}
Screenshots #
Windows #
MacOS #
iOS #
Android #
Contributing #
If you would like to contribute to the development of this plugin, please fork the repository and submit a pull request. For detailed contribution guidelines, please refer to the CONTRIBUTING.md file.
License #
This plugin is licensed under the MIT License.