一.兼容包出现的原因:
谷歌为了在较低版本中兼容高版本新加的控件和布局以及相关的一些主题(Theme),甚至一些重要组件的生命周期及重要方法(如fragment的attached ,added in API 23,需要使用兼容的fragment),而推出了兼容包,方便开发人员在较低版本中适配或者使用高版本的效果。
二.各版本兼容包介绍:
support-v4
适用范围:API Level4(即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的所有效果,还支持了Meterial 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 , PlaybaskOverlayFragment , 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包的一切内容。
三.其他
注解支持库
适用范围:all
包含内容:提供的API支持向应用中添加注解元数据
com.adroid.support:support-annotations:24.2.0
设计支持库
适用范围:all
包含内容:提供的API支持向应用中添加Material Design组件和模式(如:抽屉式导航栏,浮动操作按钮(FAB),快捷信息栏和标签页)
使用方法:
com.android.support:design:24.2.0
百分比支持库
适用范围:all
包含内容:提供的API支持向应用中添加基于百分比的尺寸并对其进行管理(如:PercentFrameLayout , PercentRelativrLayout)
使用方法:
com.android.support:percent:24.2.0
电视的应用建议支持库
适用范围:all
包含内容:提供的API支持向电视设备上运行的应用中添加内容建议(如:ContentRecommendation , RecommendationExtender)
使用方法:
com.android.support:recommendation:24.2.0