2014-10-29 264 views
0

因此,爲了支持Android上的ActionBar 4,我必須包含appcompat-v7庫。這個庫在代碼和圖像的形式上(〜600KB)增加了很多開銷。舊版本和新版Android版本的獨立版本

所以我想我可能會改變這個項目並生成單獨的軟件包,一個用於安卓機器人< 4,另一個用於較新的機器人。這應該不難,因爲適當的進口和定義只在幾個源文件中(< 5)

子問題:它是否值得費心,因爲唯一的感知增益是減小包裝尺寸?

無論如何,因爲這需要修改build.gradle,這甚至有可能嗎? 我該如何做這項工作?當然,在調試時,Android Studio應該「知道」在部署到適當的仿真器時構建什麼樣的風格(即使它始終是具有appcompat的風格)。因爲這個原因,我不想再爲此工作。

+0

只是一個問題,你知道這些口味是如何工作的嗎?總之,我不會爲此而煩惱。實際上,我會請'minSdk = 14'。 – nhaarman 2014-10-29 09:00:42

+0

您可以設置兩種不同的風味,並使用minSdk定位。 Android Studio在嘗試運行給定設備時不會知道使用哪種風格 - 您必須手動選擇活動風格,但可以從UI輕鬆訪問。不過,我同意@NiekHaarman的版本。你不應該擔心API 4,這是**古代**。請參閱https://developer.android.com/about/dashboards/index.html,但即使Froyo目前只有0.7%。比他們更不用擔心跟蹤的任何東西。 – 2014-10-29 16:47:18

+0

嗯,我還有大約5%的android用戶<4,所以如果我不需要,我不想讓他們失望。不過,如果我設置了兩種口味,一種是minsdk 7,另一種是14種口味,那麼我怎樣才能爲這些口味設置依賴關係?依賴關係不在同一個gradle對象樹下面列出,所以我不能將它們所屬的定義移動到合適的位置。 – velis 2014-10-30 11:39:05

回答

0

對不起,這是一個較老的問題,但我偶然發現了一些類似的東西。我發現這個偉大的博客回答了我的許多關於口味的問題,以及如何使用它們:http://blog.robustastudio.com/mobile-development/android/building-multiple-editions-of-android-app-gradle/#comment-940

然而,在你的情況下,我不會使用口味。我將使用支持庫:http://developer.android.com/tools/support-library/setup.html他們將允許您使用現代Android操作系統的很酷的新功能,而無需用戶真正擁有該版本。祝你好運,我希望這仍然是相關的!