From 97741cc2d3accb0e769c0390fb6c18e281c0ad15 Mon Sep 17 00:00:00 2001 From: hawkbee1 Date: Thu, 2 Nov 2023 16:04:33 +0100 Subject: [PATCH] android storage permission depending on android version --- .../view/restore_credential_page.dart | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/dashboard/drawer/ssi/restore/restore_credential/view/restore_credential_page.dart b/lib/dashboard/drawer/ssi/restore/restore_credential/view/restore_credential_page.dart index 86f437039..f3bb161ab 100644 --- a/lib/dashboard/drawer/ssi/restore/restore_credential/view/restore_credential_page.dart +++ b/lib/dashboard/drawer/ssi/restore/restore_credential/view/restore_credential_page.dart @@ -8,6 +8,7 @@ import 'package:altme/onboarding/onboarding.dart'; import 'package:altme/theme/theme.dart'; import 'package:altme/wallet/wallet.dart'; import 'package:cryptocurrency_keys/cryptocurrency_keys.dart'; +import 'package:device_info_plus/device_info_plus.dart'; import 'package:file_picker/file_picker.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; @@ -157,7 +158,16 @@ class _RestoreCredentialViewState extends State { Future _pickRestoreFile() async { final l10n = context.l10n; - final storagePermission = await Permission.photos.request(); + DeviceInfoPlugin deviceInfo = DeviceInfoPlugin(); + AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo; + + /// storage permission has changed with android 13 + late final PermissionStatus storagePermission; + if (int.parse(androidInfo.version.release) > 12) { + storagePermission = await Permission.photos.request(); + } else { + storagePermission = await Permission.storage.request(); + } if (storagePermission.isDenied) { AlertMessage.showStateMessage( context: context,