AndRoid 基础与进阶
文章平均质量分 95
流金岁月5789651
开始,新的一段旅程
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
App 启动流程全解析
Activity 启动过程分为两种,一种是根Activity的启动过程,另一种是普通Activity的启动过程。这里介绍是是根Activity的启动过程,也可以理解为应用程序启动过程。根Activity 启动过程中涉及到4个进程,分别是Zygote进程、Launcher 进程、AMS所在进程(SystemServer)、应用程序进程。原创 2022-09-08 21:12:20 · 2103 阅读 · 0 评论 -
浅析MVC、MVP、MVVM 架构
Presenter可以使View(Activity)不用直接和Model打交道,View(Activity)只用负责页面的显示和交互,剩下的和Model交互的事情都交给Presenter做,比如一些网络请求、数据的获取等,当Presenter获取到数据后再交给View(Activity)进行展示,这样,Activity的任务就大大减小了。MVVM的本质是数据驱动,把解耦做的更彻底,viewModel不持有view。指Activity,既要负责页面的展示和交互,还得负责数据的请求和业务逻辑之类的工作。原创 2022-08-23 15:12:18 · 1005 阅读 · 0 评论 -
Jetpack 架构组件:Room 数据库应用
简介Room 是一个 ORM (Object Relational Mapping)对象关系映射数据库、其底层还是封装的 SQLite 的能力。它赋予了一个强大的功能,就是可以用面向对象的思维来和数据库进行交互,绝大数情况下不用再和SQL语句打交道了,同时也不用担心操作数据库的逻辑会让项目的整体代码变混乱。Room 主要是由Entity、Dao 和Database 这3部分组成:Entity用于定义封装实际数据的实体类,每个实体类都会在数据库中有一张对应的表,并且表中的列是根据实体类中的字段原创 2022-01-16 22:23:11 · 2269 阅读 · 0 评论 -
Jetpack 架构组件:LiveData
简介LiveData 是一种可观察的数据存储器类。与常规的可观察类不同,LiveData具有生命周期感知能力,意指它遵循其他应用组件(如Activity/Fragment)的生命周期。这种感知能力可确保 LiveData仅更新处于活跃生命周期状态的应用组件观察者。优势UI和实时数据保持一致LiveData 遵循观察者模式。当数据更新后,LiveData就会通知它的所有观察者;与RxJava的方法不同的是,LiveData并不是通知所有观察者,它只会通知处于活跃状态(Activity/Fragm原创 2022-01-06 17:19:39 · 1710 阅读 · 0 评论 -
Jetpack 架构组件:ViewModel
简介在Activity/Fragment中,通常会将UI交互、与数据获取等相关的业务逻辑全部写在页面中,但是在页面功能复杂的情况下,代码量会变的非常多。页面只应该负责处理用户与UI控件的交互,并将数据展示到屏幕上,而数据获取相关的业务逻辑应该单独处理和存放。谷歌为了解决这种问题,推出了ViewModel组件。ViewModel 是以感知生命周期的形式来存储和管理视图相关的数据。使用在app的build.gradle中添加依赖dependencies { implementation "andro原创 2021-12-23 18:19:37 · 1514 阅读 · 0 评论 -
Jetpack 架构组件:Data Binding
通过Data Binding,通过声明式布局以精简的代码来绑定应用程序逻辑和布局,这样就不用编写大量的模板代码。配置在对应的 Module 的 build.gradle 中添加:buildFeatures { dataBinding = true }如果要用kotlin 开发,还需要添加apply plugin: 'kotlin-kapt'// dependencieskapt "com.android.databinding:compiler:$rootProje原创 2021-12-19 18:05:39 · 553 阅读 · 0 评论 -
Jetpack架构组件:Lifecycle
前言Lifecycle,是用于帮助开发者管理Activity和Fragment的生命周期,它是LiveData和ViewModel的基础。Lifecycle 出现原因比如说,某个界面中发起了一条网络请求,但是当请求得到响应时,界面或许已经关闭了,这个时候就不应该继续对响应的结果进行处理。因此,需要时刻感知到Activity的生命周期,以便在适当的时候进行相应的逻辑控制。通常的做法是:监听器的方式来对Activity的生命周期进行感知:public class ExJetPackActivity e原创 2021-12-16 20:49:34 · 811 阅读 · 0 评论 -
Android 事件分发机制
前言点击事件的事件分发,其实就是对MotionEvent事件的分发过程,即当一个MotionEvent产生了以后,系统需要把这个事件传递给一个具体的View,而这个传递的过程就是分发过程。基础概念涉及到类事件分发过程实际上就是Activity、ViewGroup、View对MotionEvent事件的分发,拦截,消费的过程。其中,只有ViewGroup能进行事件拦截,因此只有ViewGroup有onInterceptTouchEvent方法。类方法Activity拥有di原创 2021-12-07 14:18:15 · 2173 阅读 · 0 评论
分享