I use multi-language on the web but not on phone apps but these are my ideas if you are interested.
Firstly, I would set up a translation service that turned core text into the user’s language based on language files.
Depending on the service, you could have a single language file per language or as you indicate a core language file and the language files per page. This could take up a lot of space. I would actually set it up so that the language files for that individual were loaded from a server. Here is a very simple example from the en_GB language for the web.
PLG_CAREER_PROFILE_FIELD_UPDATE=“Updating your profile”
PLG_CAREER_PROFILE_FIELD_CREATE=“Getting started with Eluceo”
PLG_CAREER_PROFILE_FIELD_START=“Getting started with Eluceo”
The text in capitals is the core that is used within the code. The normal text is the translation, in this case into english.
On the phone app, I have actually set up a help service as a single point to provide help text when it is needed but all of the text is contained within the service code.
I hope this helps.