Android Support Library 24.2.0 正式发布
原文出处:http://blog.csdn.net/wxy318/article/details/52463998
近日,Google正式发布更新了Android Support Library Revision 24.2.0 版本。这次更新绝对满足了每一位 Android Developer 的胃口,亦枫也是第一时间整理,翻译学习,记录于此,快来看看都有哪些变化吧。
值得注意的是,24.2.0版本的Support包不再支持Android 2.2(API Level 8)以及更低版本,而之前仅存在于这些系统的classes和methods已经被标记为deprecated(废弃)并且不应该再被使用了,他们可能会被移除并且以一个新的特性出现在新版本中。
v4 包的分割
新版Support包中,之前广为人知的大而全的v4包将被分割成几个更小的包,分别为:
包名 | 说明 |
---|---|
support-compat | New Framework APIs的兼容包,比如 Context.getDrawable() 的兼容使用 |
support-core-utils | 工具类的兼容包,比如AsyncTaskLoader 和 PermissionChecker |
support-core-ui | UI组件的兼容包,常见如ViewPager、NestedScrollView 和 ExploreByTouchHelper |
support-media-compat | 多媒体框架的兼容包,包括 MediaBrowser 和 MediaSession |
support-fragment | Fragment框架的兼容包,这个就不用举例说明了,相信每一个人都用过 |
经过这样的分类隔离,以后不会再因为单独使用某一个功能而将整个v4包导入项目中,而是各取所需,大大减小了APK的大小,真是贴心之至啊
API 的更新
客户端可以使用 Custom Tabs 控制 使用打开 Install Apps 功能
TextInputLayout 支持密码的显示隐藏控制
新 android.support.transition 包支持 Transitions 框架到 API Level 14以及更高版本
Custom Tabs support library 添加支持自定义 RemoteViews 到第二层 Toolbar 上
AppCompatResources 通过 getDrawable( ) 方法,添加支持加载 vector (API level 9及更高版本)和 animated-vector(API level 11及更高版本) 资源
CoordinatorLayout 支持定义 inset views,并且指定其他 Views 避开这些 inset views 。这个翻译过来有点生涩,如果你知道FloatingActionButton如何在Snackbar展示的时候躲避移动的话,就好理解了,这里就是制定类似的behavior规则,只不过可以适用于其他协调者布局里面的 Children Views 了
新工具类 DiffUtil 能够提供计算两个集合(collections)之间的不同,并且生成适用于 类似RecyclerView的适配器(Adapter)的一系列更新操作的list对象;(有木有感受到一下子少些了很多代码的嗖嗖凉意)
自定义的Behavior新增了 RecyclerView.OnFlingListener 来响应滑动事件
Behavior 的改变
当你使用兼容包中的 day/night 功能时,任何时候的夜间模式的改变都会导致系统自动重新创建Activity。导致夜间模式切换的原因可能是一天中时间的变化,也可能是程序执行了 AppCompatDelegate.setLocalNightMode() 方法
状态栏如果是半透明的话,Snackbar 将绘制显示在导航栏后面
一些废弃 APIs
新版兼容包提出了在未来的版本中即将废弃的一些类和方法,并使用新的 APIs替代,开发者应该尽快适应熟悉这些 APIs
1、以下这些类仅支持 API Level 8 以及更低版本,并且应该使用新的 APIs 替代她们
- KeyEventCompat: Replace with KeyEvent
- MotionEventCompat: Use MotionEvent
- ViewCompat: Use View
- ViewConfigurationCompat: Use ViewConfiguration
2、AccessibilityServiceInfoCompat.getDescription()方法的废弃
3、你不能再直接实例化 ActivityCompat 类,非静态方法getReferrer(Activity) 将在未来的新版本中改为静态方法
4、CoordinatorLayout.Behavior.isDirty()已经被废弃,所有相关的实现都应该被移除掉
5、MediaSessionCompat.obtain() 已经被废弃,取而代之的方法是 fromMediaSession()
6、MediaSessionCompat.QueueItem.obtain() 已经被废弃,取而代之的方法是 fromQueueItem()
7、以下抽象类已经被废弃,并且使用了接口类取而代之
AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat:替代接口类为 AccessibilityManagerCompat.AccessibilityStateChangeListener
SearchViewCompat.OnCloseListenerCompat:替代接口类为 earchViewCompat.OnCloseListener
SearchViewCompat.OnQueryTextListenerCompat:替代接口类为 SearchViewCompat.OnQueryTextListener
SearchViewCompat.OnQueryTextListenerCompat:替代接口类为:SearchViewCompat.OnQueryTextListener
8、CustomTabsSession.setToolbarItem() 已经被废弃,取而代之的是 setSecondaryToolbarViews()
Bug 修复
以下几天已知的问题已经在新发布的24.2.0版本中修复:
AOSP issue 77712:确保调用 setRefreshing(true) 时 SwipeRefreshLayout 的指示器能够得到显示
AOSP issue 180454:修复了切换页面时 TabLayout 的闪烁问题
AOSP issue 196430:修复了在 API Level 11 及更低版本解析 SavedState 时发生的 ClassNotFoundException 异常问题
完整的 BUG 修复列表可以在 AOSP Issue Tracker 上看到
以上便是 24.2.0 版本的Support包的变化,目前来讲,v4包的分割还是最令人兴奋的,毕竟给APK瘦身是最能够直接体现在用户身上的。当然,其他的一些变化也是值得注意的,毕竟要跟着 Google 的步伐与时俱进嘛!
Android Support Library Revision 24.2.0 官方英文介绍地址(翻墙阅读):
https://developer.android.com/topic/libraries/support-library/revisions.html
Android Support Library 24.2.0 正式发布相关推荐
- Android Support Library v4、v7、v13
一.前言 关于Android Support Library,官网是这样解释的: "Android 支持库提供了诸多未内置于框架的功能.这些库提供向后兼容版本的新功能.框架中未包含的实用 U ...
- 如何更新android v7 support library,新手入门之Android Support Library | Soo Smart!
Support Library 这个支持包是一个一系列代码库,它提供了Android framework APIs的向后兼容的版本以及一些只有通过这个库包API才有的feature特性.每个Suppo ...
- Android Support Library的前世今生
原文出自:http://www.jianshu.com/p/f5f9a4fd22e8 封面 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 在之前的开发经历中经常需要导入一些如v4 ...
- Android Support Library介绍
一.Android Support Library存在的原因 Android自第一代发布以来,它的版本更新迭代的速度可以说是非常快的,但是android又是一个移动操作系统,是面对所有的用户的,并不是 ...
- android suport respository和Android Support Library
为什么80%的码农都做不了架构师?>>> 参考官网 Note: If you're developing with Android Studio, select and ins ...
- 【翻译】Android Support Library Features(二)
原文地址:http://developer.android.com/tools/support-library/features.html 在Android Support Library包中,包含了 ...
- Android Support Library学习入门
1.Support Library介绍 官方文档上(原文:http://developer.android.com/tools/support-library/index.html)第一句话就指明了S ...
- Android Support Library 学习入门
0. 文前闲话 作为一个由原生桌面应用程序开发者(VC.Delphi)转行的Android菜鸟,虐心的事真是数不胜数:安装个开发工具下载个SDK需要整整一夜:早晨一上班点开Android Studio ...
- Android Support library
1, Android Support V4, V7, V13是什么?本质上就是三个java library.2, 为什么要有support库?如果在低版本Android平台上开发一个应用程序,而应用程 ...
最新文章
- 2022-2028年中国氨基酸表面活性剂行业研究及发展前瞻报告
- GRE核心词汇助记与精练-List10感觉,感情
- 自动装配有哪些局限性?
- DNS的一些实际应用(一)
- mysql主从同步搭建和故障排除
- Debug解决问题方法论
- CentOS 下使用yum 命令安装MySQL
- MySQL中NOT IN语句对NULL值的处理
- 仔仔手机安全卫士demo(四)
- Java 操作 EXCEL
- 不要效法世界只要爱天父
- 测试睡眠质量软件,测睡眠质量的app排行榜:推荐10款有趣又有效的睡眠APP
- 境外上市,一个绝非遥不可及的梦想!
- 荒野乱斗好友系统分析
- 视频教程-必会神器之MySQL数据库-MySQL
- 深度强化学习—— 译 Deep Reinforcement Learning(part 0: 目录、简介、背景)
- 关于DDK中的编译知识
- 青楼残梦-第一次被投诉后感
- vue纵向表头通俗易懂
- PL/SQL Developer设置日期格式