Renaming(名前変更)
Renaming — Options
名前の変更を有効にした場合は、Renaming – Options パネルで、プロジェクトに含まれる項目の名前の変更をより詳細に制御できます。
Renaming
クラス、メソッド、およびフィールドの名前の変更をグローバルに適用するかどうか(有効または無効)を指定します。 対象除外規則を使用することにより、名前の変更が適用されるプロジェクトの部分を制御することができます。 オーバーロード誘導(Overload Induction™)は、署名が異なれば、複数のメソッドで同じ新しい名前を使用します。 単純な名前の変更(Simple)は、追加のオーバーロードを作成せずにメソッドの名前を生成します。
Rename Annotations
内部定義されたアノテーションの名前の変更を有効または無効にします。
Classes/Packages
クラスの名前を変更するか、または元の名前を保持するかを選択できます。 これは、非常に粗いレベルの制御用に用意されています。対象除外を使用して、個々のクラス、パッケージ全体、または特定の条件を満たすクラスの名前を保持することができます。 [Randomize]がオンになっている場合は、利用可能な最も短い識別子の一覧の中から、新しいクラス名がランダムに割り当てられます。
クラスの名前が変更される場合は、パッケージの階層をフラット化する必要があるか、またはパッケージの階層の名前付けを保持するかどうかを指定できます。
また、新しいクラス名に任意のプレフィックスを付けることができます。 プレフィックスでピリオドを使用すると、名前変更されたクラスが別のパッケージに置かれます。
メモ:フラット化された場合、ピリオドを含む
プレフィックス
がない限り、名前変更されたすべてのクラスが既定のパッケージに移動されます。
Members
すべてのメソッドおよびフィールドの名前を変更するか、またはパブリック メンバーの名前を保持するかを選択できます。 これは、非常に粗いレベルの制御用に用意されています。対象除外を使用して、メソッドの名前、引数、およびその他の条件を基に特定のメソッドやフィールドの名前を保持することができます。 [Randomize]がオンになっている場合は、利用可能な最も短い識別子の一覧の中から、新しいメソッド名およびフィールド名がランダムに割り当てられます。
Alphabets
クラスやメンバーの新しい名前を作成するために使用される文字集合を指定できます。 定義済みの文字集合の中から 1 つを選択するか、または独自の文字集合を入力することができます。 独自の文字集合を作成する際は、次の制限が適用されます。
文字集合の最小の長さは 2 文字です。 大きなプロジェクトに対しては、3 文字以上を使用することが推奨されます。
文字集合の初めの文字は、Java 識別子の開始文字として有効でなければなりません。 少なくとも 1 つは開始文字がある必要があります。
文字集合の残りの文字は、Java 識別子で有効な文字でなければなりません。
Renaming — Exclude
Renaming – Exclude パネルでは、クラスや、クラスのメソッドおよびフィールドを名前の変更対象から除外する規則を構成できます。 個々のメソッド、フィールド、クラス、またはパッケージ全体を除外することができます。
クラスの規則が定義されている場合は、それを使用して、クラス自体を名前の変更対象から除外したり、メソッドおよびフィールドの規則に一致するメンバーのみを除外したりすることができます。 この設定を変更するには、規則を選択して[Edit.. ]ボタンを押し、[Selects Class]設定を変更します。
詳細については、グラフィカルな規則エディターを参照してください。
Renaming — Map Files
Renaming – Map Files パネルは、プロジェクトの名前変更情報の読み取りと書き込みを DashO に指示するために使用されます。 この情報は、[増分難読化(adv_incremental.html)]を実行する場合や、難読化されたアプリケーションからスタック トレースをデコードする場合に使用されます。
Input
指定される入力割り当てファイルは、前回の DashO の実行で作成されたファイルです。 このファイルを設定すると、DashO は前回の増分難読化の実行で使われた名前を使用することができます。 割り当てレポート ファイルは、割り当てに見つからない入力クラスと、割り当てにはあるが入力に見つからないすべてのクラスを記録します。
Output
このファイルで作成された情報は、今後 DashO を実行する際に入力割り当てファイルで利用できます。 また、難読化されたアプリケーションからスタック トレースをデコードする際にも利用できます。
メモ:
このファイルを不注意で失ってしまうと、将来のアプリケーションの増分更新の機会を失う可能性があります。 DashO が既存のファイルを上書きできるようにするには、Overwrite
をオンにします。
ProGuard 互換の出力
このファイルで作成された情報は、ProGuard の割り当てファイルをサポートするあらゆる分析ツールで利用できます。
DashO はこのファイルを自動的に上書きしません。
Overwrite
オプションをオンにすると、DashO は既存のファイルを上書きできるようになります。