アプリを Dexguard 5.3.28 (最新バージョン) にアップグレードしましたが、フォント関連の問題に直面しています。新しいバージョンの dexguard がアセットを難読化することは知っていますが、これが問題である可能性があると思います。5.0.34 などの古いバージョンでは、問題はありませんでした。
otf フォントは assets/fonts/ ディレクトリに保存されます。カスタム TextView を使用してフォントを設定します: xmlns:custom="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 を使用しようとしましたが、結果はありませんでした。
更新: 何らかの理由で 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 を難読化しない方法はありますか? または他の提案はありますか?