Android: ¿Cómo mantener la configuración local de la aplicación independiente de System Locale?

Tengo problemas relacionados con el idioma de visualización. Puedo cambiar el idioma dentro de la aplicación ("en" para el inglés y "ja" para el japonés) independientemente del sistema del OS.

Sin embargo, el problema es que cuando la aplicación está en "ja" si los usuarios cambian el idioma del sistema manualmente (no "en" o "ja") que mi aplicación cambie automáticamente el idioma a "default". Quiero que el entorno local de mi aplicación sea independiente, independientemente del idioma que cambien los usuarios manualmente, el idioma de aplicación sigue siendo el mismo que cuando se desconectan.

EDITAR

Hay algunos enlaces útiles, pero todavía no pueden resolver mi problema. Por ejemplo: Cambiar el idioma de forma programática en Android

¿Podría dar mi sugerencia para hacerlo?

¡Gracias de antemano!

Intente esto :

import java.util.Locale; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.content.res.Configuration; import android.content.res.Resources; import android.util.DisplayMetrics; public void setLocale(String lang) { myLocale = new Locale(lang); Resources res = getResources(); DisplayMetrics dm = res.getDisplayMetrics(); Configuration conf = res.getConfiguration(); conf.locale = myLocale; res.updateConfiguration(conf, dm); Intent refresh = new Intent(this, AndroidLocalize.class); startActivity(refresh); finish(); } 

ADICIONAL:

 @Override public void onConfigurationChanged(Configuration newConfig) { newConfig.setLocale(yourLocale); super.onConfigurationChanged(newConfig); } 

AGREGADO (2):

Tienes que configurar android:configChanges="layoutDirection|locale" para desencadenar onConfigurationChanged() cuando cambies Locale .
No puedo entender por qué esto sucede, tal vez hay algunos idiomas RTL

  • Número en árabe en texto árabe en Android
  • Cómo cambiar el idioma de com.facebook.widget.LoginButton en Android
  • Android Cómo instalar los locales instalados del sistema
  • La mejor manera de determinar automáticamente el idioma del usuario
  • La actividad está parpadeando tras el cambio de configuración regional en Android 4.1+
  • Android obtiene el idioma del dispositivo
  • Los números arábigos con ar-ae y ar-sa locale en Android
  • Cambiar el idioma de las cadenas en la actividad de Android
  • Obtener el nombre del idioma en ese idioma desde el código de idioma
  • ¿Puedo acceder a recursos de diferentes idiomas de Android?
  • Android obtiene la configuración actual, no predeterminada
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.