當我從eclipse導出apk時,它壓縮所有的PNG圖像。例如,apk中的一個4.6 KB png變成了2.15 KB。不過,我更願意在構建apk之前使用tinypng優化png文件,這會製作更小的文件。使用tinypng的同樣的4.6 KB png變成了746 B。 當建立apk時,壓縮在我的746 B png上運行,使它達到1.6 KB。導出簽名的應用程序沒有「優化」PNG圖像
有什麼辦法可以禁用未來版本的優化?
當我從eclipse導出apk時,它壓縮所有的PNG圖像。例如,apk中的一個4.6 KB png變成了2.15 KB。不過,我更願意在構建apk之前使用tinypng優化png文件,這會製作更小的文件。使用tinypng的同樣的4.6 KB png變成了746 B。 當建立apk時,壓縮在我的746 B png上運行,使它達到1.6 KB。導出簽名的應用程序沒有「優化」PNG圖像
有什麼辦法可以禁用未來版本的優化?
在項目build.xml
ANT文件可以覆蓋-crunch
任務的SDK,從而避免PNG壓縮,因爲你以前壓縮他們:
<target name="-crunch">
<echo message="Skipping PNG optimization"/>
</target>
謝謝,但我沒有使用ANT,請告訴我如何創建這個build.xml文件並使用ANT構建項目? – Minas
例如,您可以將'android-support-v7-appcompat'中的一個複製到項目的根文件夾中,並使用覆蓋目標對其進行調整。如果你正在使用ADT,把這個調優過的'build.xml'文件移到ANT視圖,打開它來檢查所有的目標,並運行'release'。 –
谷歌最近在Android SDK構建工具推出了new PNG processor in aapt 0.9.1那修復了優化後的PNG大小增加問題。
安裝此更新,現在可以爲Android Studio和搖籃到PNG處理器之間有以下變化在build.gradle
配置文件切換:
android {
...
aaptOptions.useAaptPngCruncher = false
}
通過加入這一行,AAPT使用新的PNG處理器,用於檢查「優化的」PNG文件是否小於原始PNG文件。我能夠在編譯的APK中減少4.8 MB,並且沒有遇到任何新構建配置的錯誤/問題。
很高興知道!謝謝。我仍然在使用Eclipse和ant。當我切換到Android Studio&Gradle – Minas
時使用此選項現在(Gradle Android插件1.0.0-rc1)該選項的名稱已更改爲'aaptOptions.useNewCruncher',邏輯反轉,即設置'aaptOptions.useNewCruncher = false'將禁用新的PNG壓縮器。 – sschuberth
從Android Studio 1.0和Gradle 1.0.0開始,此選項似乎不起作用。我所有已經優化過的PNG文件仍在進行重新處理,導致PNG文件比原始PNG文件大10-15%。 –
更改圖片文件擴展名。例如:重命名someImage.png至someImage.jet爲我工作。你可以試試這個。
由於搖籃Android插件1.0.0:
android {
...
aaptOptions {
useNewCruncher false
}
....
}
此鏈接可以幫助你:) http://stackoverflow.com/questions/12929884/disable-android-resource-image-png優化 –