GrapheneOS has this really awesome feature that I wish would come to mainline Android: Contact and Storage scopes.
Essentially, it works very much like the feature Apple has introduced for these things, but importantly, it makes apps believe they have full access to these resources, while still maintaining a limited scope through the OS.
I doubt Google would ever adopt this (due to their less than privacy-friendly attitudes) but it is absolutely technically possible, since GrapheneOS has it today.