2013-11-19 3 views
0

Я обновил наше приложение до Dexguard 5.3.28 (последняя версия), и мы сталкиваемся с проблемой, связанной с шрифтом. Я знаю, что новая версия dexguard обфускает активы, и я думаю, что это может быть проблемой. С более старой версией, например 5.0.34, у нас не было проблем.Dexguard 5.3.28 проблема с шрифтом

Мы храним шрифты otf в каталоге assets/fonts /. И использовать пользовательский TextView установить шрифт: Xmlns: пользовательские = "http://schemas.android.com/apk/res/com.XXXX.XXXX.XXXX.XXX"

<com.XXXX.XXXX.XXXX.XXX.CustomTextView 
    android:id="@+id/custom_name" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerVertical="true" 
    android:ellipsize="end" 
    android:singleLine="true" 
    android:textColor="@android:color/white" 
    android:textSize="20sp" 
    custom:font="roman" /> 

Установка шрифта проблематично работает хорошо, но изменение всех CustomTextViews не является вариантом. Я попытался использовать -keepdirectories, -keep CusomTextView, но без результата.

UPDATE: По какой-то причине, я думаю, что файл attr.xml является запутанным и что-то здесь не так.

<attr name="font"> 
    <enum name="light" value="1"/> 
    <enum name="roman" value="2"/> 
</attr> 

<declare-styleable name="com.XXXX.XXXX.XXXX.XXX.CustomButton"> 
    <attr name="theme"> 
     <enum name="gray" value="1"/> 
     <enum name="light_gray" value="2"/> 
     <enum name="pinger_blue" value="3"/> 
    </attr> 
    <attr name="font"/> 
</declare-styleable> 

<declare-styleable name="com.XXXX.XXXX.XXXX.XXX.CustomTextView"> 
    <attr name="font"/> 
</declare-styleable> 

<declare-styleable name="CustomEllipsizedTextView"> 
    <attr name="ellipsizeAtLine" format="integer"/> 
</declare-styleable> 

Есть ли способ не обфускации attr.xml? Или любые другие предложения?

ответ

0

DexGuard действительно запутывает и адаптирует XML-файлы ресурсов несколькими способами. Вы, возможно, потребуется, чтобы сохранить пользовательские представления, на которые ссылаются:

-keep class com.XXXX.XXXX.XXXX.XXX.CustomButton 
-keep class com.XXXX.XXXX.XXXX.XXX.CustomTextView 

В противном случае, свяжитесь с нами по Saikoa, и мы будем смотреть на это более подробно.

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