Support Library
Android的支持库包是一组代码库,它提供了Android框架API的向后兼容的版本以及功能,这些功能只能通过库API。每一个支持库是向后兼容到一个特定的Android API级别。这种设计意味着你的应用程序可以使用图书馆的功能,但仍然可以与设备运行Android 1.6(API级别4),最多不兼容。
本指南提供了有关哪些功能是由支持库,如何使用它们在您的开发环境和有关库版本的信息使信息。
概观
包括在你的Android项目的支持库被认为是为应用程序开发的最佳实践,这取决于你的应用程序是针对平台版本和范围,它使用的API。使用功能的库提供了可以帮助你提高你的应用程序的外观,提高性能和扩大应用程序的覆盖更多的用户。如果你使用Android 代码模板工具,你会发现,所有的Android应用程序模板包含一个默认的支持库或更多。
支持库针对每个基地的Android API级别,每个提供不同的功能集。为了有效地利用图书馆,它考虑要支持和理解功能是由每个库在什么Android的API级别支持哪些功能是重要的。要开始,请查看 支持特征库指南。在此之后,转到 支持库安装主题,以了解如何把支持库到应用程序中。有关支持库API的更多详细信息,请参阅android.support
在API参考软件包。
修订
本节提供了有关支持库封装的版本的详细信息。
Android的支持库,版本20 (2014年7月)
-
对于卷支持库的变化:
-
- 增加了对Android wear在扩展通知支持
NotificationCompat.WearableExtender
,它允许您指定您的通知wearable-specific 特定的功能。 - 添加
NotificationCompat.Action.WearableExtender
,这使得可穿戴通知要添加的动作。 - 添加
NotificationManagerCompat
,它允许您发出了正确支持wearable特性通知。 - 添加
RemoteInput
,这使得手持设备接收来自一个可穿戴的设备上会出现通知语音输入。 - 改进的触摸反馈的处理
SwipeRefreshLayout
。
- 增加了对Android wear在扩展通知支持
Android的支持库,版本19.1.0 (2014年3月)
-
对于卷支持库的变化:
-
- 添加
SwipeRefreshLayout
类,它使用户能够刷新垂直轻扫手势视图的内容。 - 固定的可访问性问题与导航抽屉。
对于2013 APPCOMPAT库更改:
- 添加
-
- 固定背景与问题的行动吧。
Android的支持库,版本19.0.1 (2013年12月)
-
对于卷支持库的变化:
-
- 提高
PrintHelper
加入印刷异步处理。 - 修正了
DrawerLayout
的阶级近似addChildrenForAccessibility()
方法。 - 固定滑绘制镜像
ActionBarDrawerToggle
。 - 从集合中移除迭代器中的项目时,固定关断接一个的问题。
对于2013 mediarouter库更改:
- 提高
-
- 提高了路由鉴定在使用完整组件名称
MediaRouteProvider.ProviderMetadata
。 - 更新
MediaRouteChooserDialog
隐藏禁用路由。
对于V8 renderscript库更改:
- 提高了路由鉴定在使用完整组件名称
-
- 为RenderScript的thunk层添加错误传播。
Android的支持库,版本19 (2013年10月)
-
对于卷支持库的变化:
-
- 增加了对外部存储API的支持
getObbDirs()
,getExternalFilesDirs()
,getExternalCacheDirs()
,和getStorageState()
。这些辅助方法总是在运行Android 4.3(API级别18)和早期的设备返回一个文件对象。在Android 4.4(API级别19)和更高的运行时,这些方法可能返回多个文件对象。 - 添加
PrintHelper
,与打印API的工程用最少的代码打印图像类。 - 为弹出菜单添加拖放到打开的用户界面支持。欲了解更多信息,请参阅
PopupMenuCompat
和ListPopupWindowCompat
。 - 改进的辅助功能支持与另外一个的
findFocus()
的方法AccessibilityNodeProviderCompat
和getLiveRegion()
的方法AccessibilityNodeInfoCompat
。 - 添加辅助类
ScaleGestureDetectorCompat
访问新的缩放手势的方法。 - 固定的问题
ActionBarDrawerToggle
从右到左的语言显示。 - 修改
AutoScrollHelper
选项消耗触摸事件,或让他们通过到其他视图传递。
对于2013 mediarouter库更改:
- 增加了对外部存储API的支持
-
- 添加媒体播放排队的支持,设置HTTP标头值和媒体播放持续时间。
- 加入明确的开始,得到,并明确管理媒体播放会话与媒体路由器结束会话的操作。
Android的支持库,版本18 (2013年7月)
-
对于卷支持库的变化:
-
- 用户界面
- 添加
BidiFormatter
用于处理文本字符串,结合从右到左,从左到右格式的文本。 - 修改
ViewPager
更好地处理案件,其中寻呼机具有零初始布局处理测量宽度。 - 修改
DrawerLayout
和SlidingPaneLayout
,而该项目的代码正在编辑不抛出测量异常。
- 添加
- 无障碍
- 添加
ExploreByTouchHelper
简化无障碍定制的实施意见。 - 修正了一个问题
ViewPager
不正确填充TYPE_VIEW_SCROLLED
辅助活动。 - 在修正了一个空指针异常
ViewPager
填充一个辅助事件时。 - 简体
AccessibilityNodeInfoCompat
通过改变CharSequence中
输入字符串
对象。 - 弃用的
AccessibilityRecordCompat
构造函数,使用的对象
作为输入。
- 添加
- 媒体
- 加入
TransportMediator
辅助类来管理媒体传输控制,如播放,暂停,跳过等媒体的行动。 - 加入
DisplayManagerCompat
显示输出管理对一个或多个设备的显示器。
- 加入
- 其他变动
- 添加
WakefulBroadcastReceiver
辅助类实现的检测装置唤醒事件,并通过工作开了一个共同的模式服务
,同时确保该设备不会在切换之前回去睡觉就完成了。 - 增加了两个新的API,
commitContentChanged()
和rollbackContentChanged()
,以AsyncTaskLoader
协助处理后台更新数据的变化,随后取消。
- 添加
新的2013 APPCOMPAT库:
- 用户界面
-
- 添加了
动作条
,允许执行操作栏用户界面的设计模式回至Android 2.1(API级别7)和更高。使用这个类,您需要通过扩展新的实现您的活动ActionBarActivity
类。
新的2013 mediarouter库:
- 添加了
-
增加了一个新的mediarouter库,提供了支持谷歌演员开发者预览版。在2013 mediarouter库API提供控制媒体渠道的路由的一种手段和溪流从当前设备到外部屏幕,扬声器和其他目标设备,具有兼容性背到Android 2.1(API级别7)。见2013 mediarouter库获取更多信息。
在支持库R18引入的2013 mediarouter库API须在支持库以后的修订改变。在这个时候,我们建议使用库只与连接谷歌演员开发者预览版。
Android的支持库,版本13 (2013年5月)
-
对于卷支持库的变化:
-
- 加入
DrawerLayout
用于创建 导航抽屉,可在从一个窗口的边缘被拉到。 - 添加
SlidingPaneLayout
部件创建链接的摘要和详细视图,适当地适应各种屏幕尺寸。 - 添加
ActionBarDrawerToggle
作为一种功能结合在一起DrawerLayout
和动作条
。 - 添加
ViewDragHelper
作为父视图中拖动视图的新的共同组成部分。 - 添加
ScrollerCompat
提供滚轮
和OverScroller
兼容性支持。 - 添加
FileProvider
允许应用程序之间共享的私有文件。 - 更新
ViewPager
如果相关的抛出一个异常PagerAdapter
类没有调用修改notifyDataSetChanged()
。 - 有固定的问题
ViewPager
儿童绘画排序顺序。 - 固定
GestureDetectorCompat
派遣失踪onSingleTapConfirmed(MotionEvent)
自来水超时长按事件之间的通话。
新的2013 GridLayout的库:
- 加入
-
- 添加
网格布局
提供了支持网格布局
布局对象。 - 附加的
空间
,可以用来给中创建空白区域GridLayout的
布局对象。
- 添加
Android的支持库,版本12 (2013年2月)
-
对于卷支持库的变化:
-
- 改进的交互行为
ViewPager
。 - 修正了可能导致一个错误
ViewPager
选择了错误的页面。 - 固定资产使用
removeView()
方法在布局过程中的ViewPager
。 - 修正了
SearchViewCompat
,其中使用后退按钮以关闭不清除搜索文本。此修补程序仅适用于主机的API级别14及更高版本。
- 改进的交互行为
Android的支持库,版本11 (2012年11月)
-
对于卷支持库的变化:
-
- 用户界面
- 增加了对嵌套支持
片段
类。 - 加入改进
FragmentManager
调试。 - 在固定的问题
FragmentTabHost
其中片段与标签交互可能导致ListView中
状态的丢失。 - 修正了在用户可见的提示
FragmentStatePagerAdapter
。 - 添加
PageTransformer
接口ViewPager
允许应用程序提供一个自定义的过渡行为进行滚动。 - 添加了新功能和修正,以
TaskStackBuilder
从当前版本。 - 固定
PagerTitleStrip
正确地跟踪PagerAdapter
当前正在使用。 - 固定显示闪烁,定位和文本剪切问题
PagerTitleStrip
。 - 固定
PagerTabStrip
绘制下划线时正确尊重填充。
- 增加了对嵌套支持
- 无障碍
- 增加了对新的辅助手势和触摸事件类型的支持
AccessibilityEventCompat
。 - 增加了对新的辅助功能API的支持
ViewCompat
。 - 增加了对支持
performAccessibilityAction()
方法来ViewCompat
。
- 增加了对新的辅助手势和触摸事件类型的支持
- 增加了对手势的支持
GestureDetectorCompat
。 - 增加了对文件执行原子操作使用一个新的支持
AtomicFile
类。 - 增加了对全套支持
化妆
的方法IntentCompat
。 - 添加
trimToSize()
方法中LruCache
实用工具类。 - 更新
ConnectivityManagerCompat
从得到的NetworkInfoCONNECTIVITY_ACTION
播出。
- 用户界面
Android的支持库,版本10 (2012年8月)
-
对于卷支持库的变化:
-
- 增加了对Android中4.1(API级别16)引入添置通知功能的支持
NotificationCompat
。
- 增加了对Android中4.1(API级别16)引入添置通知功能的支持
Android的支持库,版本9 (2012年6月)
-
对于卷支持库的变化:
-
- 用户界面支持
- 添加
PagerTabStrip
支持,提供增强的功能超越PagerTitleStrip
。 - 修正了各种错误的
PagerTitleStrip
和PagerTabStrip
,包括setAllCaps
选项,标题对齐方式,外观的改进,最小宽度约束和触摸导航的问题。 - 增加了对支持
ViewPager
页排水沟,这有助于ViewPager
类提供内容分页支持具有较大水平滚动范围,如地图。 - 修正了许多错误的
ViewPager
,包括大小和数据集的变化问题,页面定位,用户交互,滚动跟踪和键盘导航问题。 - 修正了很多bug的
片段
,包括妥善处理onActivityResult()
当目标片段不再存在,调度评选活动,以无形的碎片,提高FragmentTransaction.replace()
的行为,并添加更好的状态处理的片段被移出的看法。 - 增加了对支持
postOnAnimation()
的方法ViewCompat
。 - 更新
NavUtils
使用Android 4.1(API级别16) 上时可用导航功能。
- 添加
- 无障碍
- 更新的辅助支持类,包括
AccessibilityNodeInfoCompat
,遵循的Android 4.1(API级别16)所做的修正。 - 增加了对在无障碍浏览行动支持
ViewPager
。
- 更新的辅助支持类,包括
- 一般改进
- 更新
TaskStackBuilder
反映的Android 4.1(API级别16)API的变化。 - 增强
TaskStackBuilder
以允许它从一个服务使用。 - 增加了对支持
EXTRA_HTML_TEXT
到ShareCompat
。 - 更新
NotificationCompat.Builder
支持setNumber()
方法。 - 新增支 持在
ConnectivityManagerCompat
为isActiveNetworkMetered()
方法。
- 更新
- 用户界面支持
Android的支持库,版本8 (2012年4月)
-
对于卷支持库的变化:
-
- 固定的意图标志
PendingIntent
通过生成的对象TaskStackBuilder
。 - 除去从GridLayout的库项目未使用的属性,以确保库可以与API级别7和更高的建立。
- 补充说
,类路径
和。项目
文件的网格布局库项目。
- 固定的意图标志
Android的支持库,版本7 (2012年3月)
-
对于卷支持库的变化:
-
- 添加
ShareCompat
,它提供了辅助类来发送和接收内容的社交分享应用,包括新的元数据共享归结到数据源的应用程序。这个类还提供了新的兼容集成ShareActionProvider
中的Android 4.0。 - 添加
NavUtils
和TaskStackBuilder
,为落实支持 Android的设计进行导航指引。这些新增功能包括一个方法来实现操作栏的上跨版本按钮。举个例子实现这种模式,看到(的AppNavigation样品<SDK> /样本/ <platform> / AppNavigation
)。 - 添加
NotificationCompat.Builder
提供兼容性实现了Android 3.0的Notification.Builder
辅助类用于创建标准化的系统通知。
- 添加
Android的支持库,版本6 (2011年12月)
注:参考支持库API,现已与框架引用,例如:android.support.v4.app
。
-
对于卷支持库的变化:
-
- 更改ViewPager:
- 增加了对额外的装饰视图支持
ViewPager
。装饰性的观点可能会提供在XML布局寻呼机的子视图。 - 加入
PagerAdapter.getPageTitle()
提供标题字符串页面,默认为没有标题的每一页。 - 添加
PagerTitleStrip
,非交 互式标题条,可以添加为ViewPager的孩子。开发人员可以提供文本的外观和颜色,以及布局大小和重力信息。 - 更新
PagerAdapter
方法取视图组对象,而不是视图,以避免在适配器实现类铸件。 - 更新
ViewPager
使用启动式一扔行为。 - bug修正为用户界面交互和测试自动化。
- 增加了对额外的装饰视图支持
- 支持片段:
- 改变
setStartDeferred()
方法来setUserVisibleHint(布尔)
。 - 增加了对屏幕外的递延页开始,以提高性能。
- 改变
- 支持可访问性的API:
- 更新
AccessibilityDelegateCompat
方法返回空列表,而不是空。 - 需要的卷样本增加了新的API。
- 更新
- 更改ViewPager:
Android的支持库,版本5 (2011年12)
-
对于卷支持库的变化:
-
- 支持可访问性的API:
- 添加
AccessibilityDelegateCompat
支持View.AccessibilityDelegate
。 - 添加
AccessibilityEventCompat
支持AccessibilityEvent
。 - 添加
AccessibilityManagerCompat
支持AccessibilityManager
。 - 添加
AccessibilityNodeInfoCompat
支持AccessibilityNodeInfo
。 - 添加
AccessibilityRecordCompat
支持AccessibilityRecord
。 - 添加
AccessibilityServiceInfoCompat
支持AccessibilityServiceInfo
。 - 添加
ViewGroupCompat
以支持辅助功能视图组
。 - 修改
ViewCompat
以支持辅助功能视图
。
- 添加
- 更改ViewPager:
- 增加了对页面之间的利润支持。一个可选的
可绘制对象
可提供到填充边界。 - 增加了对支持
EdgeEffect
。 - 增加了键盘导航功能的支持
- 新增支持控制多少页面被保存到当前页面的两侧。
- 改进的触摸物理学。
- bug修正为用户界面的行为。
- 增加了对页面之间的利润支持。一个可选的
- 支持可访问性的API:
Android的支持库,版本4 (2011年10月)
-
对于卷支持库的变化:
-
- 添加
EdgeEffectCompat
支持EdgeEffect
。 - 添加
LocalBroadcastManager
允许应用程序轻松注册,并在一个单一的应用程序接收的意图没有全球广播它们。 - 新增支 持在
ViewCompat
检查并设置overscroll模式查看
在Android 2.3 s和更高版本。 - 更改片段的API:
- 增加了新的API来控制新菜单的可见性。
- 添加自定义动画的API。
- 在添加的API
FragmentActivity
保留自定义,非配置实例数据。 - 各种错误修复。
- 修正了
装载机
,造成的问题在消除缺陷的AsyncTask
的升级Froyo和旧版本的平台上运行时,秒。支持代码现在使用它自己的版本的AsyncTask
保持在所有平台上的版本相同的行为。
- 添加
Android的支持库,版本3 (2011年7月)
-
对于卷支持库的变化:
-
- 增加了对支持
Fragment.SavedState
- 添加
MotionEventCompat
支持较新的MotionEvent
的API - 添加
VelocityTrackerCompat
支持较新的VelocityTracker
的API - 添加
ViewConfigurationCompat
支持较新的ViewConfiguration
的API - 所有这一切让你有水平分页创建UI,让用户刷卡左,右的内容视图之间新的API(仅适用于支持库)。类来支持这一包括:
ViewPager
:一个视图组
,管理布局的子视图,用户可以刷卡之间。PagerAdapter
:填入该适配器ViewPager
表示每个页面的意见。FragmentPagerAdapter
:的扩展PagerAdapter
的片段之间翻转。FragmentStatePagerAdapter
:的扩展PagerAdapter
为使用该库的支持片段之间翻转Fragment.SavedState
。
全新V13支持库:
- 增加了对支持
-
- 包括
FragmentPagerAdapter
和FragmentStatePagerAdapter
支持水平寻呼。这些都是完全一样加入到卷支持库的API,但依靠的Android 3.2平台的其他组件。使用这个库,而不是卷的,如果你正在开发的Android 3.2和更高版本(在卷库中的所有其他API已经可以使用API级别13)。
- 包括
Android的支持库,修订2 (2011年5月)
-
对于卷库的变化:
-
- 支持动画片段
- 修复
Fragment.onActivityResult()
的bug
Android的支持库,修订版1 (2011年3月)
初始版本与卷库。