package Ġcz . h ombre . m ilitary Reports Assistant . services . impl Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Build Ċ import Ġcz . h ombre . m ilitary Reports Assistant . services . Locale Service Ċ import Ġcz . h ombre . m ilitary Reports Assistant . services . Preferences Service Ċ import Ġjava . util .* Ċ Ċ const Ġval ĠLOCAL E _ CHANGED Ġ= Ġ 3 Ċ Ċ class ĠLocale ServiceImpl ( private Ġval Ġpreferences Service : ĠPreferences Service ) Ġ: ĠLocale Service Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġset Preferred Locale ( context : ĠContext ): ĠContext Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlanguage Ġ= Ġpreferences Service . get Language () ĊĊĠĠĠĠĠĠĠ Ġreturn Ġset Locale ( context , Ġlanguage ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetString For Actual Locale ( context : ĠContext , Ġid : ĠInt ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresources Ġ= Ġcontext . resources ĊĠĠĠĠĠĠĠ Ġval Ġconfiguration Ġ= Ġresources . configuration ĊĠĠĠĠĠĠĠ Ġval Ġsaved Locale Ġ= Ġconfiguration . locale ĊĊĠĠĠĠĠĠĠ Ġval Ġlanguage Ġ= Ġpreferences Service . get Language () ĊĊĠĠĠĠĠĠĠ Ġconfiguration . set Locale ( Locale ( language )) ĊĠĠĠĠĠĠĠ Ġresources . update Configuration ( configuration , Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġval Ġstr Ġ= Ġresources . getString ( id ) ĊĊĠĠĠĠĠĠĠ Ġconfiguration . locale Ġ= Ġsaved Locale ĊĠĠĠĠĠĠĠ Ġresources . update Configuration ( configuration , Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġstr ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Locale ( context : ĠContext , Ġlanguage : ĠString ): ĠContext Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlocale Ġ= ĠLocale ( language ) ĊĠĠĠĠĠĠĠ ĠLocale . setDefault ( locale ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresources Ġ= Ġcontext . resources ĊĠĠĠĠĠĠĠ Ġvar Ġconfiguration Ġ= Ġresources . configuration ĊĠĠĠĠĠĠĠ Ġval Ġdisplay Metrics Ġ= Ġresources . display Metrics ĊĠĠĠĠĠĠĠ Ġconfiguration . set Locale ( locale ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . N ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcontext . application Context . create Configuration Context ( configuration ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresources . update Configuration ( configuration , Ġdisplay Metrics ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcontext ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ }