2013-02-13 174 views
1

我想配置一個Android應用程序在IntelliJ IDEA 12中使用Proguard,問題在於,默認情況下,IntelliJ將所有我的庫項目包含在內,顯然沒有辦法改變這種行爲。如何使用IntelliJ IDEA 12配置Proguard?

所以,兩個問題:

一,我可以改變這種行爲嗎?

二,我需要嗎?如果我使用的是android-support-v4.jar,可以將它作爲一個禁止使用而不是libraryjar嗎?

謝謝!

回答

1

像android-support-v4.jar這樣的庫對於ProGuard來說是個害處,因爲它們是部署在設備上的應用程序的一部分。 ProGuard將其與應用程序代碼一起處理。這可以減小應用程序的規模,提高性能,並且使其反向工程更加困難。例如,ProGuard可能能夠刪除庫中大量未使用的部分。

只有android.jar是ProGuard的庫jar,因爲它已經存在於設備上。 ProGuard需要它進行分析,但保持不變,並且不會將其複製到輸出罐中。

+0

有什麼辦法可以告訴IntellJ還包含一堆JSON文件嗎?我有包含類名的JSON文件,所以它們也需要通過Proguard運行。 – thalador 2014-01-15 20:38:40

+1

@thalador如果您可以將JSON文件添加到庫中,它們也將被處理(請參閱ProGuard手冊>使用情況> -adaptresourcefilecontents)。 – 2014-01-16 19:34:15