Приложение поддерживает 2 локала. Во время инструментального инструмента или теста пользовательского интерфейса я хочу проверить с определенным языком (например, en ). Ссылаясь на 6629458, я сделал функцию для изменения локализации в Котлин: < /p>
private fun setLocale(language: String, country: String) {
val context = InstrumentationRegistry.getInstrumentation().context
val locale = Locale(language, country)
// here we update locale for date formatters
Locale.setDefault(locale)
// here we update locale for app resources
val res: Resources = context.getResources()
val config: Configuration = res.configuration
config.locale = locale
res.updateConfiguration(config, res.displayMetrics)
}
< /code>
можно назвать внутри корпуса функции тестирования UT: < /p>
@Test
fun uiTest () {
composeTestRule.setContent {
...
}
setLocale("en", "EN")
...
}
< /code>
Однако локаль не установлен на английском языке, но в зависимости от настройки по умолчанию моего устройства Android тестирования. Есть ли какой -либо подсказку для этого (функция вызывает без ошибок, но локаль не изменяется, как ожидалось)?>
Подробнее здесь: https://stackoverflow.com/questions/786 ... instrument
Изменение языка приложений/локали программно в JetPack Compose во время инструментальных инструментов/пользовательского ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Laravel Blade: как получить доступ к переводам строк локали, отличной от текущей локали?
Anonymous » » в форуме Php - 0 Ответы
- 18 Просмотры
-
Последнее сообщение Anonymous
-