Fonts can be considered an attack surface so system level fonts are restricted.
The Android Open Source Project documentation has a section on Custom Fonts Fallback which allows for Android 12+ OEMs to modify/update the system font with appropriate system level permission/keys. For Android 11 and earlier, the system font was delivered with a ROM update.
Reading on there is a section on signing font files:
Signing font files
Since font files are risky resources, they must be verified with trusted keys. Carefully review all font files that are to be updated, and sign with your private key. The signature must be fs-verity compatible.
where Google calls out that font files are 'risky resources'.
Quoting from:
How can a font be used for privilege escalation?
Fonts are hard. It's old code. It runs in kernel mode.
Related post:
How to detect suspicious content in a TrueType Font (.ttf) font file
So it can be implied that by not allowing end-user customization of the system fonts, there is a reduction of the attack surface.
Individual apps can embed their own custom font files for use within their own app.
/storage/emulated/0is the home directory? And of which user? Every app has an own user account, so it would not make sense to have one home directory for all users. On Android versions prior to 11/storage/emulated/0was often used like a home directory by some apps, but it was never a home directory in a Linux meaning. And since Android 11 it isn't accessible at all on file level. – Robert Jun 15 '22 at 17:14