Android 刚刚在 Android API 级别 33 中引入了每应用程序语言首选项,它允许您更改应用程序语言,而不管系统语言如何。
为了支持运行 API <= 32 的设备,Android 在Androidx Appcompat: androidx.appcompat:appcompat:1.6.0-beta01中添加了: AppCompatDelegate.setApplicationLocales(appLocale);
现在应用程序语言可以与系统语言不同。
现在有2种情况:
Locale.getDefault()将返回与应用程序相同的系统区域设置。Locale.getDefault()将返回应用程序区域设置而不是系统。并获取系统区域设置,LocaleManagerCompat.getSystemLocales(this).get(0)即可使用。我的问题:如何在 Android API <= 32 中获取应用程序区域设置 当使用向后兼容性而不需要使用时Context?
我发现这与我需要的相反。
我试图存储区域设置,然后在需要时获取它,但这种方法需要Context这是不合格的。