前言
在 Google 2017 年的 IO 大会上面发布了一些可以帮助开发人员创建更容易维护和更强大的应用程序,Lifecycle 就是其中的一个,它可以帮助我们更好的处理 Android 组件和声明周期相关的问题。
Lifecycle
Lifecycle 是一个类,它持有关于组件(如 Activity 或 Fragment)生命周期状态的信息,并且允许其他对象观察此状态。
引入 Lifecycle 扩展库
|
|
在 Google 2017 年的 IO 大会上面发布了一些可以帮助开发人员创建更容易维护和更强大的应用程序,Lifecycle 就是其中的一个,它可以帮助我们更好的处理 Android 组件和声明周期相关的问题。
Lifecycle 是一个类,它持有关于组件(如 Activity 或 Fragment)生命周期状态的信息,并且允许其他对象观察此状态。
引入 Lifecycle 扩展库
|
|
之前我有写过一个开源的Java实现的基于MVP架构的开源Android工程基本结构《MVP架构的Android基础框架》。
最近在用Kotlin做项目,计划使用MVP架构在开始一个新的项目,来继续聊聊Kotlin中MVP的实现。
参考链接:
复杂的软件必须有清晰合理的架构,否则无法开发和维护。MVC(Model-View-Controller)是最常见的软件架构之一,业界有着广泛应用。
MVC中所有通信都是单向的。
MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向,MVP 非常重要的一点是基于测试,P 层不应该有任何 android sdk 的代码,mock M 和 V 层后,可以脱离 android 直接对 P 层进行 Java Test。
参考链接:
截止目前,Android 9 Pie已发布, 官网所列出的版本如下。
产品代号 | Android版本 | API |
---|---|---|
Pie | 9 | 28 |
Oreo | 8.0 | 26 or 27 |
Nougat | 7.1 and 7.0 | 24 or 25 |
Marshmallow | 6.0 | 23 |
Lollipop | 5.1 and 5.0 | 21 or 22 |
KitKat | 4.4-4.4.4 | 19 or 20 |
截止2018 年 10 月 26 日各个版本的使用用户数量统计如下:
其实Android 1.5版本并不是第一个Android版本,但是这个版本之前的都没有代号,这就说明了这个版本的特殊性和重要性。
最初的Android Cupcake使用的是第三方的PC样式的键盘方式,拥有小部件(Widgets),可以直接上传资料到YouTobe和Picasa.
这个版本正如它的名字一样,是一个很紧凑的版本(你想,将一个蛋糕放入杯子中是不是这个蛋糕很精细紧凑)。
Android 1.6版本,代号“Donut 甜甜圈”在2009年9月发布,它解决了系统会自动重启的系统漏洞,更新了图形绘制和视频等功能,而且引入了很多搜索功能。
此版本第一次兼容多种大屏幕尺寸设备,第一次搭载google的转弯导航功能。