android很多app的语言设置都是设置自己app的语言,并没有设置到系统的语言,今天小编小试牛刀,自己实现了一个可以设置androi系统语言的功能。如下:

Locale locale = Locale.ENGLISH;//英文Locale locale = Locale.CHINA;//中文                Class amnClass = null;                try {                    amnClass = Class.forName("android.app.ActivityManagerNative");                    Object amn = null;                    Configuration config = null;                    // amn = ActivityManagerNative.getDefault();                    Method methodGetDefault = amnClass.getMethod("getDefault");                    methodGetDefault.setAccessible(true);                    amn = methodGetDefault.invoke(amnClass);                    // config = amn.getConfiguration();                    Method methodGetConfiguration = amnClass.getMethod("getConfiguration");                    methodGetConfiguration.setAccessible(true);                    config = (Configuration) methodGetConfiguration.invoke(amn);                    // config.userSetLocale = true;                    Class configClass = config.getClass();                    Field f = configClass.getField("userSetLocale");                    f.setBoolean(config, true);                    // set the locale to the new value                    config.locale = locale;                    // amn.updateConfiguration(config);                    Method methodUpdateConfiguration = amnClass.getMethod("updateConfiguration", Configuration.class);                    methodUpdateConfiguration.setAccessible(true);                    methodUpdateConfiguration.invoke(amn, config);                } catch (ClassNotFoundException e) {                    e.printStackTrace();                } catch (NoSuchMethodException e) {                    e.printStackTrace();                } catch (NoSuchFieldException e) {                    e.printStackTrace();                } catch (InvocationTargetException e) {                    e.printStackTrace();                } catch (IllegalAccessException e) {                    e.printStackTrace();                }

最后在AndroidManifest.xml里设置:

完结!

更多相关文章

  1. 消息推送系统设计
  2. Android中visibility属性
  3. Android中Gallery 点击图片放大
  4. IDS打包系统包修改
  5. Android开发小技巧系列(六)
  6. Android(安卓)7.1.2(Android(安卓)N) Multi-window-mode--多窗口
  7. [置顶] 深入了解Android进度条——ProgressBar,SeekBar和RatingBa
  8. Android(安卓)调用系统相机拍照并储存在本地
  9. android系统提供的常用命令行工具

随机推荐

  1. oracle学习笔记(二)
  2. sqlserver 数据库压缩与数据库日志(ldf)
  3. SQL查询效率注意事项小结
  4. SQLSERVER查询所有数据库名,表名,和字段名
  5. sqlserver 触发器实例代码
  6. 理解SQL SERVER中的逻辑读,预读和物理读
  7. 三种SQL分页查询的存储过程代码
  8. SQLServer中数据库文件的存放方式,文件和
  9. 使用BULK INSERT大批量导入数据 SQLSERVE
  10. SQL Server 交叉表查询 case