Android Gradle 3.2.1 до 3.3.1 разбивает ресурсы String, используя CDATA - PullRequest
0 голосов
/ 28 февраля 2019

Все мои ресурсы String используют CDATA для экранирования HTML и простых кавычек, если таковые имеются.Большинству это действительно не нужно, но мои файлы ресурсов генерируются из Excel, и это облегчает обработку.

Все работало превосходно, пока я не перешел с версии 3.2.1 на версию 3.3.1

Теперь все мои строки из ресурсов XML отображаются в двойных кавычках.Если я вернусь к 3.2.1, все снова будет хорошо.

Почему я использую CDATA в своих строковых ресурсах?Большая часть строки ресурса, которую я использую в своем приложении, хранится в файле Excel, поэтому я могу легко обрабатывать изменения, обновления выполняются моими рецензентами проекта, ... Они могут использовать инструмент, который им удобен и не беспокоитс экранированием кавычек или HTML.

И мои файлы ресурсов легко создаются с помощью формул и макросов.

Поскольку некоторые ресурсы могут содержать HTML или могут потребовать экранирования кавычек, я окружаю все ресурсы CDATA

<string name="action_settings"><![CDATA["Settings"]]></string>
<string name="alert_too_long"><![CDATA["<font color='red'>You took too long to answer.<b> Learn better and try again.</font>"]]></string>

Если я удаляю кавычки в CDATA, он хорошо отображается, но простые кавычки нужно экранировать.

Есть ли настройка в новой версии Gradle или какая-либо причина для этого изменения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...