2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Android 9.0 代码切换系统语言

Android 9.0 代码切换系统语言

时间:2021-01-25 22:38:58

相关推荐

Android 9.0 代码切换系统语言

最近有个功能要求切换系统语言,通过查询资料找到用反射的方法进行系统设置,但是感觉实现方式太麻烦了,后来看源码发现LocalePicker这个类里面有updateLocale方法能够轻松完成系统语言切换~。

首先使用该方法需要系统权限:

<uses-permission android:name="android.permission.CHANGE_CONFIGURATION"tools:ignore="ProtectedPermissions" />

再就是具体实现方式~

public void setLanguage(Locale mLocale) {try {Class localPicker = Class.forName("com.android.internal.app.LocalePicker");Method updateLocale = localPicker.getDeclaredMethod("updateLocale", Locale.class);updateLocale.invoke(null,mLocale);} catch (ClassNotFoundException | NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {e.printStackTrace();}}

然后通过如下调用方式就能实现系统语言切换咯!

setLanguage(Locale.ENGLISH);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。