2016-01-25 2 views
0

У меня есть проект Android, где мне нужно извлечь значения android: textStyle при создании TextView. Я делаю это по телефону следующее на AttributeSet:Использование Dexguard запутывает Android-схему в Attributeset

attrs.getAttributeIntValue("http://schemas.android.com/apk/res/android", "textStyle", 0); 

Это дает мне правильные значения TextStyle, установленные в XML, в то время как я не использую Dexguard. Как только я запутаю код, этот фрагмент кода всегда будет возвращать значение по умолчанию 0.

Мне еще предстоит найти конкретное объяснение или аргументацию, которая могла бы объяснить, почему это происходит. Поэтому любые и все разумные ответы будут оценены.

ответ

1

Выключает Dexguard делает обфускацию имен атрибутов XML, и поэтому ссылка на «textStyle» не работает.

Добавляя следующее набор правил этого перестало быть проблемой

-keepresourcexmlattributenames **/textStyle 

Это также может быть использован с заменой wilcards (**) с правильным путем иерархии XML.

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

  • Нет связанных вопросов^_^