当前分类 / 架构 / 总共4篇

Google官方架构组件 Lifecycle 和 LiveData

前言

在 Google 2017 年的 IO 大会上面发布了一些可以帮助开发人员创建更容易维护和更强大的应用程序,Lifecycle 就是其中的一个,它可以帮助我们更好的处理 Android 组件和声明周期相关的问题。

Lifecycle

Lifecycle 是一个类,它持有关于组件(如 Activity 或 Fragment)生命周期状态的信息,并且允许其他对象观察此状态。

引入 Lifecycle 扩展库

implements "android.arch.lifecycle:runtime:${architectureComponentsVersion}"
implements "android.arch.lifecycle:extensions:${architectureComponentsVersion}"

阅读更多

用Kotlin对MVP基本结构实现

之前我有写过一个开源的Java实现的基于MVP架构的开源Android工程基本结构《MVP架构的Android基础框架》

最近在用Kotlin做项目,计划使用MVP架构在开始一个新的项目,来继续聊聊Kotlin中MVP的实现。

参考链接:

MVP架构

复杂的软件必须有清晰合理的架构,否则无法开发和维护。MVC(Model-View-Controller)是最常见的软件架构之一,业界有着广泛应用。

MVC架构

MVC中所有通信都是单向的。

  1. View 传送指令到 Controller
  2. Controller 完成业务逻辑后,要求 Model 改变状态
  3. Model 将新的数据发送到 View,用户得到反馈

MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向,MVP 非常重要的一点是基于测试,P 层不应该有任何 android sdk 的代码,mock M 和 V 层后,可以脱离 android 直接对 P 层进行 Java Test。

阅读更多

Android历史版本变迁

参考链接:

截止目前,Android 9 Pie已发布, 官网所列出的版本如下。

产品代号Android版本API
Pie928
Oreo8.026 or 27
Nougat7.1 and 7.024 or 25
Marshmallow6.023
Lollipop5.1 and 5.021 or 22
KitKat4.4-4.4.419 or 20

截止2018 年 10 月 26 日各个版本的使用用户数量统计如下:

Android各个版本使用统计

Android历史版本

Android历史版本

Cupcake(杯子饼干)

Cupcake

其实Android 1.5版本并不是第一个Android版本,但是这个版本之前的都没有代号,这就说明了这个版本的特殊性和重要性。

最初的Android Cupcake使用的是第三方的PC样式的键盘方式,拥有小部件(Widgets),可以直接上传资料到YouTobe和Picasa.

这个版本正如它的名字一样,是一个很紧凑的版本(你想,将一个蛋糕放入杯子中是不是这个蛋糕很精细紧凑)。

Donut(甜甜圈)

Donut

Android 1.6版本,代号“Donut 甜甜圈”在2009年9月发布,它解决了系统会自动重启的系统漏洞,更新了图形绘制和视频等功能,而且引入了很多搜索功能。

此版本第一次兼容多种大屏幕尺寸设备,第一次搭载google的转弯导航功能。

阅读更多

MVP架构的Android基础框架

说明

这是我开源的一个基于MVP架构的Android开发基础框架,源码开放在gitlab上。

仓库地址:https://gitlab.com/lxqxsyu/TestKotlin

框架介绍

MVP架构,Retrofit+Rxjava+Okhttp网络请求,可切换Glide和Fresco图片框架,封装基础刷新分页加载,部分功能后期会有所改进。

框架整体结构

框架整体结构

阅读更多