I have seen apps requiring permission for
Photos/Media/Files
- read the contents of your USB storage
- access USB storage filesystem
- modify or delete the contents of your USB storage
Storage
- read the contents of your USB storage
- modify or delete the contents of your USB storage
This "grouping" somewhat puzzles me. Questions:
- Is the grouping meaningful for practical purposes?
- Where is the specification of the container-group given? (I am not a developer, but a pointer might help as a "prospective trainee").
- Why does this grouping seem to not match this (under Permission Groups).
Other specific Questions:
What is the difference, e.g., between:
Photos/Media/Files -> read the contents of your USB storage
Storage -> read the contents of your USB storage ?
What is the difference between:
Photos/Media/Files -> read the contents of your USB storage +
Photos/Media/Files -> modify or delete the contents of your USB storagePhotos/Media/Files -> access USB storage filesystem ?
READ_EXTERNAL_STORAGE
,WRITE_EXTERNAL_STORAGE
– andMOUNT_UNMOUNT_FILESYSTEMS
(access USB storage filesystem). – Izzy Nov 12 '21 at 19:08READ_EXTERNAL_STORAGE
andWRITE_EXTERNAL_STORAGE
are useless withoutMOUNT_UNMOUNT_FILESYSTEMS
, is that correct? – sancho.s ReinstateMonicaCellio Nov 13 '21 at 11:56MOUNT_UNMOUNT_FILESYSTEMS
is not required to access already mounted file systems – and the "average app" should not need this permission. Since around Android 5 it's recommended anyway to use SAF (Storage Access Framework) anyway, where no Manifest-Permission is needed for but the user can decide more granular which directories an app can access. A known disadvantage of that is that it's much slower, which the user only would notice when accessing many files at once ("batch operations"). – Izzy Nov 13 '21 at 15:48