自定义Android应用能否修改设备系统语言?
Android应用修改系统语言的可行性分析
Android 10(API 29)及更早版本:
可以实现,但有严格限制。你需要申请android.permission.CHANGE_CONFIGURATION权限,这个权限属于签名级权限——你的应用必须和设备系统使用相同的签名才能获取。满足条件的系统级应用,可通过LocaleList.setDefault()等API修改系统语言配置(旧版的Resources.updateConfiguration()已废弃)。Android 11(API 30)及更新版本:
普通第三方应用完全无法实现修改系统语言的功能。官方收紧了权限控制,即使申请权限也无法调用系统级的语言修改接口,用户只能通过系统设置手动更改语言。这类应用仅能修改自身内部的语言环境,无法影响整个设备系统。
总结:如果你的应用是设备预装的系统级应用,且能拿到系统签名,可在低版本Android上实现该功能;普通第三方应用目前没有可行路径修改系统语言,只能做应用内语言切换。
内容的提问来源于stack exchange,提问作者Temur Musurmanov
相关产品推荐
相关产品推荐

