Редактировать текст перевода во время выполнения с сервера

Обзор

Насколько мне известно на Android у вас есть два способа установить тексты вашего приложения:

  • Вы можете использовать string.xml с разными языковыми стандартами.
  • Вы можете загружать строки с сервера и устанавливать каждую метку с помощью setText(language.text), но это будет головной болью.

Проблема может возникнуть, если вам нужно изменить текст опубликованного приложения без его повторной публикации; например, если вы хотите изменить для определенного перевода небольшой текст без каких-либо изменений в функциональности. (например: вы могли заметить, что вы написали «Сделать снимок» вместо «Сделать снимок»).

Библиотека

i18next - хорошая библиотека для динамического управления переводами с сервера, но вам все равно нужно добавить текст для каждой полученной метки.

Итак, мой вопрос

Тем не менее, AFAIK, нет способа сделать это изначально, но есть ли библиотека низкого уровня или обходной путь, который позволяет заменить строку в вашем string.xml некоторым загруженным текстом?

Другой вариант - сделать так, чтобы текст нашей метки указывал вместо @string/myValue на что-то вроде @myresource.pathtovalue.

Честно говоря, я думаю, что это может быть огромным улучшением для приложения, есть ли что-нибудь полезное?

Ищу то же самое, нашли решение?

Day 19.03.2019 13:46

@ Day, к сожалению, нет, мы отказались от этого и начали работать над другой задачей .. Мы, вероятно, скоро вернемся к этому, если я найду решение, я напишу здесь ^^; если кто-то сможет ответить на этот вопрос буду очень рад :)

Pier Giorgio Misley 19.03.2019 14:21

Я попробую использовать эту библиотеку Restring, как было предложено здесь. Отправлю ответ, если у меня будут положительные результаты

Day 25.03.2019 13:57
1
3
119
0

Другие вопросы по теме