摘要:App性能测试主要包含以下几点: 1、响应 2、内存 3、cpu 4、FPS (app使用的流畅度) 5、GPU过度渲染 6、耗电 7、耗流 一、响应 软件的响应时间和响应速度直接影响到用户的体验度,如果一个软件,迟迟加载不出来,会直接影响到软件的日活、留存。因此对于一个软件,对响应速度测试是必不可 阅读全文
kotlin--Object关键字
2024-02-19 19:46 by ttylinux, 96 阅读, 0 推荐, 收藏, 编辑
摘要:1.匿名内部类 Object可以实现,继承一个抽象类的同时,实现多个接口。 interface A { fun funA() } interface B { fun funB() } abstract class Man { abstract fun findMan() } fun main() { 阅读全文
Kotlin委托属性(1)
2024-01-06 09:40 by ttylinux, 136 阅读, 0 推荐, 收藏, 编辑
摘要:在Kotlin中,委托属性(Delegated Properties)是一种强大的语言特性,允许你将属性的 getter 和 setter 方法的实现委托给其他对象。这使得你能够通过委托来重用代码、将属性的行为解耦,并实现一些通用的模式。下面是一些关键概念和用法: class Example { v 阅读全文
android mvvm实例解析
2023-08-04 22:53 by ttylinux, 1139 阅读, 0 推荐, 收藏, 编辑
摘要:MVVM架构,将整个应用分为三层,View层,VM层,Model层。其中View层单向引用VM层,VM层单向引用Model层。如上图。 单向引用,而非双向引用,这是MVVM与MVP最大的区别。View层,只是单向引用VM层,VM层不需要引用View层,但是却可以 更新View层。这是通过VM层的观察 阅读全文
BasicSample项目说明
2023-07-30 11:31 by ttylinux, 24 阅读, 0 推荐, 收藏, 编辑
摘要:整个示例项目,两个Fragment,ProductListFragment和ProductFragment,一个MainActivity。在MainActivity里面展示的是ProductListFragment,点击每个Item, 会进入相应的ProductFragment。 相关技术点说明: 阅读全文
SavedStateHandle的介绍----ViewModel不具备保存状态数据的功能
2023-07-16 18:11 by ttylinux, 469 阅读, 0 推荐, 收藏, 编辑
摘要:LiveData本身不能在进程销毁中存活,当内存不足时,Activity被系统杀死,ViewModel本身也会被销毁。 为了保存LiveData的数据,使用SavedStateHandle。 事故场景: 进程销毁后,重新去通过ViewModel去获取LiveData数据,获取到的数据是null。 这 阅读全文
Transform LiveData
2023-07-15 18:19 by ttylinux, 59 阅读, 0 推荐, 收藏, 编辑
摘要:查询资料的其中一个场景: 创建一个回调函数,当查询后台的时候,后台有结果了,回调对应的回调函数,并将结果保存到LiveData中。 public class DataModel { ... public MutableLiveData<List<Repo>> searchRepo(String qu 阅读全文
android架构组件Lifecycle
2023-07-08 22:15 by ttylinux, 40 阅读, 0 推荐, 收藏, 编辑
摘要:Lifecycle 组件指的是 android.arch.lifecycle 包下提供的各种类与接口,可以让开发者构建能感知其他组件(主要指Activity 、Fragment)生命周期(lifecycle-aware)的类。 在android开发的过程中,我们常常需要让一些操作能够感知Activi 阅读全文
Android架构组件LiveData
2023-07-08 22:03 by ttylinux, 200 阅读, 0 推荐, 收藏, 编辑
摘要:LiveData LiveData是基于观察者模式创建的,其中,LiveData是被观察者,观察者通过注册方法,监听被观察者的数据变化。LiveData在数据发生变化的时候,会通知观察者。 LiveData是一个容器,存放数据的容器,它的数据变化可以被监听,也就是LiveData是一个被观察者,如下 阅读全文