Android : Is there any way to change the default language of android to new language?

前端 未结 3 1971
無奈伤痛
無奈伤痛 2020-12-03 00:27

I\'m trying to know whether it is possible to change the default android OS language to other. For which the language is not in the settings for instance: how to set the dev

3条回答
  •  一生所求
    2020-12-03 00:41

    you can change the locale to whatever you want and the system need support it.

    try this:

    public static void changeLocale(Locale locale) {
        try {
            Class activityManagerNative = Class.forName("android.app.ActivityManagerNative");
    
            Object am = activityManagerNative.getMethod("getDefault").invoke(activityManagerNative);
    
            Object config = am.getClass().getMethod("getConfiguration").invoke(am);
            config.getClass().getDeclaredField("locale").set(config, locale);
            config.getClass().getDeclaredField("userSetLocale").setBoolean(config, true);
    
            am.getClass().getMethod("updateConfiguration", android.content.res.Configuration.class).invoke(am, config);
            Log.i(LOG_TAG, "send change locale request");
        } catch (Exception e) {
            Log.e(LOG_TAG, "change locale error:", e);
        }
    }
    

提交回复
热议问题