2016-09-07 3 views
-2

Итак, вопрос в том, как рассчитать процент переведенного текста в strings.xml из значений - (lang) против значений (язык по умолчанию).Рассчитать процентное количество переведенных текстов в Android (значения/strings.xml)

Я знаю, как получить доступ к строке из ресурсов, но нет возможности установить код языка. Я нашел ответ с изменением языка, но я «боюсь» мигающего интерфейса с другим языком даже за несколько мс.

План будет состоять в том, что я буду считать строки по умолчанию/значениям/и подсчитывать также в/values- (userlang) /, и если процент будет ниже, чем, например, 90%, я спрошу пользователя (кто-то, кто использует мое приложение часто и дольше) для помощи в переводе.

Не требуется полная функция, просто безопасный способ доступа к строкам (в цикле) из другого языкового стандарта без изменения пользовательской локали.

Нет намерения сделать это вручную. Сделать ручную разницу невозможно.

Так что я сделал решение выполненное на заказ класса, но я предполагаю, что мой рейтинг, что никто не оценит его, так просто результат того, что я искал:

myTranslationRatio=new TranslationRatio(context,"en",deviceLang); 

Log.d("my","myTranslationRatio getLangCore: "+myTranslationRatio.getLangCore()); 
Log.d("my","myTranslationRatio getLangCurrent: "+myTranslationRatio.getLangCurrent()); 
Log.d("my","myTranslationRatio getTranslatedRatio: "+myTranslationRatio.getTranslatedRatio()); 
Log.d("my","myTranslationRatio getCountCore: "+myTranslationRatio.getCountCore()); 
Log.d("my","myTranslationRatio getCountCurrent: "+myTranslationRatio.getCountCurrent()); 
Log.d("my","myTranslationRatio getCountToTranslate: "+myTranslationRatio.getCountToTranslate()); 

результате

: myTranslationRatio getLangCore: en 
: myTranslationRatio getLangCurrent: cs 
: myTranslationRatio getTranslatedRatio: 0.972973 
: myTranslationRatio getCountCore: 148 
: myTranslationRatio getCountCurrent: 144 
: myTranslationRatio getCountToTranslate: 4 

ответ

0

Что касается программного программирования языкового кода, вы можете рассмотреть вопрос this. Обязательно прочитайте комментарии, так как там есть важные моменты.

Предполагая, что обновления вашего файла strings.xml сделаны статически через обновления приложений, тогда мой первый инстинкт должен был скопировать существующий strings.xml в вашу новую языковую папку и попытаться использовать diff, чтобы отслеживать, сколько сделано.

+0

Я не хочу менять язык приложения, вы отвечаете полностью вне темы. – Adam

+0

@ Адам первая часть моего ответа находится на Java, а вторая часть моего ответа относится к инструментам командной строки. Я не вижу, как требуется изменить язык, на котором написано приложение? В вашем сообщении вы прямо упоминаете изменение языка своего приложения. –

+0

Да, я упоминаю об этом, но я написал, что НЕ хочу менять язык. На самом деле НЕ. – Adam

Смежные вопросы