前言

Android一些SDK比較分裂,為此google官方提供了Android Support Library package 系列的包來保證高版本sdk開發的向下兼容性, 所以你可能經常看到v4,v7,v13這些數字,首先我們就來理清楚這些數字的含義,以及它們之間的區別。

support-v4

  • 用在API lever 4 (Android 1.6)或者更高版本。

  • 它包含了相對其他版本更為豐富的內容,運用廣泛,例如:Fragment,NotificationCompat,LoadBroadcastManager,ViewPager,PageTabStrip,Loader,FileProvider 等

1
compile 'com.android.support:support-v4:21.0.3'

support-v7

  • 用於API level 7(Android 2.1)以上版本而設計的

  • v7是要依賴於v4,需確定你有包含 v4的檔案

  • v7支持了Action Bar以及一些Theme的兼容。

1
compile 'com.android.support:appcompat-v7:21.0.3'

support-v13

為了API level 13(即Android 3.2)及更高版本的,一般我們都不常用,平板開發中能用到。

實際應用

Material Design Theme

今年的5.0版本,Android推出了Material Design的概念,這是在設計上Android的又一大突破。對應的程序實現上就有Theme.Material.Light、Theme.Material.Light.DarkActionBar等,但是這種風格只能應用在在5.0版本的手機,如果在5.0之前應用Material Design該怎麼辦呢?同樣的引用appcompat-v7包,這個時候的Theme.AppCompat.Light、Theme.AppCompat.Light.DarkActionBar就是相對應兼容的Material Design的Theme。

注意事項

  • gradle引用appcompat-v7包的時候就不需要引用v4了,因為v7裡默認包含了v4包
參考來源
  1. Android Support兼容包詳解
  2. android android-support-v4 v7 v8 v13 v17 的特性说明混乱记忆小云朵
  3. [Soloved] android-support-v7-appcompat && v4 Support Library
  4. Support Library Features | Android Developers