ほとんどの場合、リソースは、(a) リソースを含むパッケージが難読化されたときに ProGuard が変更するパスを介してアクセスされているか、(b) 出力 JAR にコピーされていないためにドロップされています。
構成に Java ランタイム クラスを明示的に含める必要はありません。
次のオプションを確認することをお勧めします。
-adaptclassstrings [class_filter] クラス名に対応する文字列定数も難読化する必要があることを指定します。フィルタを使用しない場合、クラス名に対応するすべての文字列定数が適応されます。フィルターを使用すると、フィルターに一致するクラスの文字列定数のみが適応されます。たとえば、コードにクラスを参照するハードコーディングされた文字列が多数含まれていて、それらの名前を保持したくない場合は、このオプションを使用できます。対応するクラスは縮小ステップでも自動的に保持されますが、主に難読化時に適用されます。
-adaptresourcefilenames [file_filter] 対応するクラス ファイル (存在する場合) の難読化された名前に基づいて、名前を変更するリソース ファイルを指定します。フィルタを使用しない場合、クラス ファイルに対応するすべてのリソース ファイルの名前が変更されます。フィルターを使用すると、一致するファイルのみが名前変更されます。たとえば、リソース ファイルの処理を参照してください。難読化する場合にのみ適用されます。
-adaptresourcefilecontents [file_filter] コンテンツを更新するリソース ファイルを指定します。リソース ファイルに記載されているクラス名は、対応するクラス (存在する場合) の難読化された名前に基づいて名前が変更されます。フィルターを使用しないと、すべてのリソース ファイルの内容が更新されます。フィルターを使用すると、一致するファイルのみが更新されます。リソース ファイルは、プラットフォームのデフォルトの文字セットを使用して解析され、書き込まれます。このデフォルトの文字セットは、環境変数 LANG または Java システム プロパティ file.encoding を設定することで変更できます。例については、リソース ファイルの処理を参照してください。難読化する場合にのみ適用されます。
詳細については、 http://proguard.sourceforge.net/manual/examples.html#resourcefilesを参照してください。