2011-07-25 10 views
10

私はAndroidプロジェクトで使用するライブラリを設計しています。今では、いくつかのデバッグファイルのアップロードをサポートするためにApacheのFTP jarのようなものを含めるようになっています。Proguardは未使用のコードを削除しますか(Android上)

すべてのプロジェクトでライブラリのすべての部分が使用されるわけではありません(一部のプロジェクトではFTPアップロードはまったく行われませんが、ライブラリのUIツールを使用したいと思っています)。

今、私は3つの質問ました:

  1. んProGuardの例のようなunsusedソース(自分のコード)を、削除私のUIツールクラスは、メインプロジェクトから参照されることは決してありません。つまり、アプリケーションでは使用されません。

  2. 使用しない場合、Proguardは外部ライブラリ(apache ftp jarなど)を削除しますか?そうでない場合、オプション1が適用される場合は、ソースを含めることができます。

  3. リソースファイル(実際にProguardsジョブ、IntelliJまたはEclipse以上) - 例:ライブラリプロジェクトに保存されているデフォルトマーカーを使用してGoogleマップ拡張機能を作成します。とにかくマップが必要ない場合、ファイルは各アンドロイドプロジェクトに含まれています - それを防ぐ簡単な方法があります。

もう少しbackround:私はすべてのライブラリの内容をできるだけ1つのプロジェクトに保存しようとします。私はライブラリーをまだ分割するのには良い点は知らないので、すべてのライブラリを別々に作成するのは大変なことではありません(これまではそうしていましたが、ほとんどの場合モジュール化が進んでいました)。任意の洞察力のための

おかげで、 クリス

+1

「Desingingは」くそドイツ語...我々は-ingの多くを持って、 –

+0

:-)興味深いプロセスのように聞こえる通常無-ign - だから、 –

答えて

9

ProGuardのが適切に設定されているとそれは、しようとしunsused源

を削除しません。

使用しない場合、Proguardは外部ライブラリ(apache ftp jarなど)を削除しますか?

正しく設定されているとします。

例:私はライブラリプロジェクトに保存されているデフォルトのマーカーを使用してGoogleマップ拡張機能を作成します(実際にはProguardsジョブ、もっとIntelliJまたはEclipseはありません)。とにかくマップが必要ない場合、ファイルは各アンドロイドプロジェクトに含まれています - それを防ぐ簡単な方法があります。

+0

:-) orthograpic愛好家のための修正私のライブラリにソースとジャーを含めるのに違いはありません。ほとんどのjarもソースコードを提供していますが、正しい答えを理解していれば、Proguardを正しく使用する方法がわかっている限り、例えば、次のような利点はありません。 Apacheのコモンソースとjarファイルを含む。 –

+0

@Christian:正しい。どのような場合でもProguardはソースから機能しません。AFAIK - .classファイルで動作します。 – CommonsWare

+0

@CommonsWareの場合、基本的な例を追加して正しく設定する方法が良いでしょう。 – rekire

関連する問題