CopyOnWriteList简介 ArrayList是线程不安全的,于是JDK在java.util.concurrent包下新增了一个线程并发安全的List-CopyOnW...

CopyOnWriteList简介 ArrayList是线程不安全的,于是JDK在java.util.concurrent包下新增了一个线程并发安全的List-CopyOnW...
Kotlin Coroutines(协程) 完全解析系列: Kotlin Coroutines(协程) 完全解析(一),协程简介 Kotlin Coroutines(协程) ...
前言 从 Android 2.3 开始,Google 把 Handler 的阻塞/唤醒方案从 Object#wait() / notify(),改成了用 Linux epol...
简述 基于项目需求,用户更换新头像后,iOS、Android、web 端三端需要能更新到最新的头像。由于各种原因,用户头像的URL始终是不变的。而一般App端的图片加载框架都...
注:SparseArray来自于Android源码问题:1、什么是SparseArray?2、SparseArray采用说明数据结构?3、SparseArray默认容量多大?...
目录 [toc] 1、协程是什么 如果我们去维基百科,可以找到一段类似的话: 协程是一种非抢占式或者说协作式的计算机程序并发调度的实现,程序可以主动挂起或者恢复执行。 又如果...
我们在自定义 View 控件时随处可见 Matrix 的身影,主要用于坐标转换映射,我们可以通过 Matrix 矩阵来控制视图的变换。 Matrix 本质上是一个如下图所示的...
引言 之前总是使用RadioButton+ViewPager来实现底部导航栏+fragment切换效果,总是繁琐地还需要写ViewPager的适配器类,显得很是不优雅!今...
如果是在app文件夹下的build.gradle里直接依赖不会有事,但是如果放在Library 包的时候,需要在项目的build.gradle里面写上: 同时也需要在sett...
项目中有一个页面实现的是用户为教师打分的功能,页面使用 RecyclerView 来实现的,由于这个功能一直没有正式上线使用,所以接手之后我也没有注意过这段代码是否存在问题。...
HandlerThread 顾名思义就是一种可以使用 Handler 的 Thread。日常开发中我们经常会通过创建一个 Thread 去执行任务,有多个任务就多创建几个线程...
1.LiveData介绍 LiveData是Jetpack AAC的重要组件,同时已有一个同名抽象类。LiveData,原意是活着的数据。数据还能有生命?先来看下官方的定义:...
我是在深入学习 kotlin 时第一次看到协程,作为传统线程模型的进化版,虽说协程这个概念几十年前就有了,但是协程只是在近年才开始兴起,应用的语言有:go 、goLand、k...
公司的小程序项目上线, 后期还会有小型的版本迭代. 为了让用户能在我们进行版本迭代后及时使用最新版本的功能. 做了以下优化.. 知识点1: 当用户点击左上角关闭,或者按了设备...
有多少人在设置页面背景颜色,想到的是在json文件中直接设置的? 最后是不是发觉都没有作用。。。 其实这个属性是用来设置页面下拉时的背景颜色: 真正可以设置页面背景颜色的在w...
最近升级了AS到3.2.1,好多次在开启了AS的代理之后再关闭就无效了, 以Mac电脑为例,真正的AS全局配置文件为 ~/.gradle/gradle.properties,...
努比亚技术团队原创内容,转载请务必注明出处。 1.前言 从用户手指点击桌面上的应用图标到屏幕上显示出应用主Activity界面而完成应用启动,快的话往往都不需要一秒钟,但是这...
昨天把新公司的项目提交到了 GitLab 上,感觉 GitLab 创建项目很简洁并没有看到设置 Git版本忽略文件的选项。然后就直接提交了上去。可是烦人的事来了,Xcode ...
解决了我的问题,mark一下
AndroidStudio中使用自己编译的framewokr jar包编译背景:在主机厂或者有Android系统源码,通常会改framework下的代码,比如隐藏接口要开放或者新增一些api等,但因为AS中使用的是标准的api jar,在AS工程编...
背景:在主机厂或者有Android系统源码,通常会改framework下的代码,比如隐藏接口要开放或者新增一些api等,但因为AS中使用的是标准的api jar,在AS工程编...