3
外部依賴我所熟悉的建築使用make
大型應用程序,但現在我已經使用過Android Studio開始,我想知道如何做的事情我已經在做Makefile
。在搖籃
這裏有一個例子,可以幫助你編一個答案:
的Makefile例子:(簡約)
INK=inkscape
INKFLAGS=--export-area-page
# Resolve *.png dependencies
drawable-mdpi/%.png: %.svg
$(INK) $< [email protected] -w 48 -h 48 $(INKFLAGS)
drawable-hdpi/%.png: %.svg
$(INK) $< [email protected] -w 72 -h 72 $(INKFLAGS)
drawable-xdpi/%.png: %.svg
$(INK) $< [email protected] -w 96 -h 96 $(INKFLAGS)
更簡單的例子:
drawable-mdpi/ic_launcher.png: ic_launcher.svg
inkscape ic_launcher.svg --export-png=ic_launcher.png -w 48 -h 48 --export-area-page
drawable-hdpi/ic_launcher.png: ic_launcher.svg
inkscape ic_launcher.svg --export-png=ic_launcher.png -w 72 -h 72 --export-area-page
如何在Gradle中做到這一點?
我想解決外部依賴性,如上面的例子中提到的。其實,我通過「讓」做它,但我想徹底刪除這個額外的步驟。
搖籃默認編譯所有的繪製媒體在你的Android項目中的 「繪製」 文件夾中。它還自動識別子文件夾,例如drawable-hdpi和drawable-mdpi,並在適當的情況下使用這些子文件夾來查找適當的圖像以獲得解決方案。 build.gradle文件中有一個'dependencies'標籤,但是據我所知它主要用於從項目或Maven中添加外部JARS,以向外部存儲庫提供地址以便爲您下載庫。希望它有助於你在路上的一點點。 – 2014-12-18 13:09:52
@G_V我知道,我想解決外部依賴關係,如我的示例中提到的。修改時手動導出每個圖像都是非生產性的。實際上,目前我正在使用'make'來做這件事,但我想徹底刪除這個額外的步驟。 – 2014-12-19 01:15:40
我可以想象,我在後臺線程上將所有代碼都預先標記爲自己,然後根據需要緩存我需要的內容。除非你有數百個大型繪圖工具,否則工作效果不夠好,在這種情況下,縮放本身仍然不會減慢應用程序的速度,但垃圾收集器的確如此。我無法真正幫助你,但也許Gradle的[推薦書籍](https://www.gradle.org/books)更有用。 – 2014-12-19 11:17:06