一、出现的原因:
谷歌为了在较低版本中兼容高版本新加的控件和布局以及相关的一些主题(Theme),甚至一些重要组件的生命周期及重要方法(如fragment的attached,added in API 23,需要使用兼容的fragment),而推出了兼容包,方便开发人员在较低版本中适配或者使用高版本的效果。
二、兼容包简介
support-v4
适用范围:API Level 4(即Android 1.6)及以上
包含内容:Fragment、NotificationCompat、LoadBroadcastManager、ViewPager、PageTabStrip、Loader、FileProvider等
使用方法:
compile 'com.android.support:support-v4:版本'
support-v7
适用范围:API level 7(Android 2.1)及以上
包含内容:包含了v4的所有效果,还支持了Material Design的多种新的布局和空间,如RecyclerView、TabLayout、ToolBar、CardView等等
使用方法:
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:cardview-v7:23.0.0'
compile 'com.android.support:recyclerview-v7:23.0.0'
support-v13
适用范围:API level 13(Android 3.2)以上,针对于平板兼容开发
包含内容:增强的对Fragment效果的支持,使得Fragment能够在平板的各个版中兼容
使用方法:
compile 'com.android.support:support-v13:24.2.0'
support-v17:
适用范围:兼容4.2及以上,支持电视设备
包含内容:BrowseFragment, DetailFragment, PlaybasckOverlayFragment, SearchFragment等
使用方法:
com.android.support:preference-v14:24.2.0
androidX
适用范围: AS 3.2及以上,Gradle 插件版本4.6及以上,compileSdkVersion 版本 28及以上,buildToolsVersion 版本改28.0.2及以上
包含内容:Android新的扩展库 AndroidX,用于替换原来的 Android扩展库(v系列包),包含v包的一切
使用方法:androidX的迁移
三、其他
注解支持库
适用范围:all
包含内容:提供的 API 支持向应用中添加注解元数据
使用方法:
com.android.support:support-annotations:24.2.0
设计支持库
适用范围:all
包含内容:提供的 API 支持向应用中添加 Material Design 组件和模式(如:抽屉式导航栏、浮动操作按钮 (FAB)、快捷信息栏和标签页)
使用方法:
com.android.support:design:24.2.0
百分比支持库
适用范围:all
包含内容:提供的 API 支持向应用中添加基于百分比的尺寸并对其进行管理(如 :PercentFrameLayout 、 PercentRelativeLayout)
使用方法:
com.android.support:percent:24.2.0
电视的应用建议支持库
适用范围:all
包含内容:提供的 API 支持向电视设备上运行的应用中添加内容建议(如:ContentRecommendation 、 RecommendationExtender)
使用方法:
com.android.support:recommendation:24.2.0