我们需要允许用户将文件存储在外部存储中,为此,我们MANAGE_EXTERNAL_STORAGE在应用程序中使用权限。
理想情况下,我们正在使用 Android SDK 版本 30 及以上版本,Permission.manageExternalStorage并使用Permission.storage低于 30 的 Android SDK 版本,如下面的代码所示
// This func is added to access scope storage to export csv files
static Future<bool> externalStoragePermission(BuildContext context) async {
final androidVersion = await DeviceInfoPlugin().androidInfo;
if ((androidVersion.version.sdkInt ?? 0) >= 30) {
return await checkManageStoragePermission(context);
} else {
return await checkStoragePermission(context);
}
}
static Future<bool> checkManageStoragePermission(BuildContext context) async {
return (await Permission.manageExternalStorage.isGranted ||
await Permission.manageExternalStorage.request().isGranted);
}
static Future<bool> checkStoragePermission(BuildContext context,
{String? storageTitle, String? …Run Code Online (Sandbox Code Playgroud)