pickFile static method
Pick arbitrary file (docs/images/videos) via FilePicker.
Implementation
static Future<File?> pickFile(BuildContext context) async {
if (!await requestStoragePermission(context)) return null;
try {
final result = await FilePicker.pickFiles(
type: FileType.custom,
allowedExtensions: [
'pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx',
'jpg', 'jpeg', 'png', 'gif', 'bmp',
'mp4', 'avi', 'mkv', 'mov', 'wmv', 'flv',
],
);
if (result.isNotEmpty) {
final filePath = result.first.path;
if (filePath != null) return File(filePath);
}
return null;
} catch (e) {
return null;
}
}