我正在尝试实现 Android 13 中引入的逐应用程序语言功能。我正在使用 AppCompatDelegate.setApplicationLocales,它在 Android 13 上运行得非常好。在 Android 12 上,如果我使用活动上下文而不是应用程序上下文,则它可以工作。以下来自活动的片段会在 Android 12 上产生不同的输出。
Log.d(TAG, applicationContext.getString(R.string.settings_change_button))
Log.d(TAG, getString(R.string.settings_change_button))
第一行是以手机语言打印的,第二行是以应用程序语言打印的。我按照这里所示添加了AppLocalesMetadataHolderService https://developer.android.com/guide/topics/resources/app-languages#android12-impl
我需要做些什么来使应用程序上下文使用应用程序语言?