自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 《Android性能优化》卡顿优化 : 卡顿检测

本文只作总结,不写细节,可用于面试知识点快速复习。需要深入了解细节的朋友请看完总结后带着问题去百度。卡顿原因出现卡顿的主要原因是主线程做了一些不该做的事,或者主线程做不了事情了,即主线程被某些耗时任务阻塞导致UI绘制的工作无法在下一帧到来前的16.66ms内(每一帧的时间间隔 =1s / 屏幕刷新频率60hz =16.66ms)完成,导致出现跳帧现象。卡顿检测方法 一...

2019-08-21 00:51:41 398

原创 《面试总结》Android消息机制、Handler机制

本文只作总结,不写细节,可用于面试知识点快速复习。需要深入了解细节的朋友请看完总结后带着问题去百度。HandlerAndroid特有的线程间通信方式,适用于任意两个线程之间的通信,主要是发送和处理消息,使用场景一般为子线程异步任务回调到主线程中的Handler的回调方法中进行UI操作。向主线程提交消息的方式Handler.sendMessage(Message messag...

2019-08-20 22:13:07 184

原创 Android Activity启动模式详解

上一篇《Activity启动模式之详解ActivityRecord、TaskRecord、ActivityStack》记录了深入理解启动模式所需要的一系列相关类和名词,如果有需要可以先去看看https://blog.csdn.net/luzaiyy611/article/details/99259950。本篇尽量使用简洁的语言讲解Activity的四种启动模式以及一些需要注意的点以...

2019-08-18 23:06:51 158

原创 Activity启动模式之详解ActivityRecord、TaskRecord、ActivityStack

本文目的在于作为充分理解activity启动模式之前的铺垫和对一些常用概念的深入理解。通常我们在说activity启动模式的时候会说到activity栈,任务栈,activity任务栈等词语,但是如果细问这些名词的代表着什么?以什么表现形式出现?或许我们就会支支吾吾没有一个详细的概念,看完本文你就会对activity栈,任务栈这些概念有一个更深入的了解,也可以更好的帮助学习后续的activi...

2019-08-18 22:29:06 2190

转载 Android自定义控件系列——Paint类全解析

https://blog.csdn.net/mluoya/article/details/87909871

2019-06-30 15:10:46 170

转载 PathEffect()详解

一、setPathEffect()这个方法一看就和path有关,顾名思义,它就是给path设置样式(效果)的。PathEffect这个路径效果类没有具体的实现,效果是由它的六个子类实现的:这六个子类分别可以实现不同的路径效果:下面,我们来用代码来具体实现一下。二、测试代码2.1 代码框架首先初始化paint和path,然后配置相关属性,最后作画。pack...

2019-06-30 15:05:25 583

转载 synchronized使用及原理解析

synchronized使用及原理解析修饰静态方法、实例方法、代码块Synchronized修饰静态方法,对类对象进行加锁,是类锁。Synchronized修饰实例方法,对方法所属对象进行加锁,是对象锁。Synchronized修饰代码块时,对一段代码块进行加锁,是对象锁。/** * synchronized示例 * 1、修饰静态方法 * 2、修饰实例方法 * 3、修...

2019-06-30 15:03:24 186

转载 深入理解 Java 垃圾回收机制

深入理解 Java 垃圾回收机制一:垃圾回收机制的意义java 语言中一个显著的特点就是引入了java回收机制,是c++程序员最头疼的内存管理的问题迎刃而解,它使得java程序员在编写程序的时候不在考虑内存管理。由于有个垃圾回收机制,java中的额对象不在有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用空闲的内存;内存泄露:指该内存空间使...

2019-06-30 14:48:46 157

转载 Java中的object九大方法

在Java中,只有基本类型(int,boolean等)的值不是对象。其他类型,包括数组类型,不管是对象数组还是基本类型的数组都扩展于Object类。方法摘要protected Object clone() 创建并返回此对象的一个副本。boolean equals(Object obj) 指示某个其他对象是否与此对象“相等”。protected void finalize() 当垃圾回...

2019-06-15 15:52:18 139

原创 Android 记一次static变量引起的问题

问题最近在做RTSP流录制功能,基本结构为 CameraActivity  —>  PlayFragment(流预览,TextureView:因为有缩放相关操作)  ——> RTSPPlayer(两个线程通过MedeaCodec分别做音频和视频track编解码处理) ,一个按钮控制录制开始和结束, 录制中isRecording  和   isIdle 两种状态,由于需要保持各层状态...

2018-09-04 21:37:01 1371 1

原创 Android 属性动画和补间动画的区别和特性

补间动画 补间动画,主要是向View对象设置动画效果,包括AlphaAnimation 、RotateAnimation 、ScaleAnimation 、TranslateAnimation 这4种效果,对应的xml标签分别是alpha、rotate、scale、translate。通过为动画设置初始和终止对应的值,根据插值器和duration计算动画过程中间相应的值实现平滑运动,即设置初...

2018-08-26 19:38:34 5438

原创 LRUCache的原理

LruCache是Android提供的一个缓存类,采用LRU算法来管理内部成员,Least Recently Used即最近最少使用置换算法。平时使用最多的图片框架Glide也是用的LruCache来管理图片的内存缓存,缓存的容量自定义。以前只知道这些关于LruCache的基本知识,并未深究,今天看了源码理解更深层次了许多。LruCache内部实际是用LinkedHashMap实现,并且做了线程安...

2018-06-08 00:32:05 962 1

原创 holder.getAdapterPosition()取值问题

平时在用到Recycleview的ItemRemove方法想要有一个默认删除动画时出现问题网上推荐方法:dataList.remove(holder.getAdapterPosition());adapter.notifyItemRemoved(holder.getAdapterPosition());问题解决,有效果。最开始对holder.getAdapterPosition()的取值存疑。后来...

2018-06-07 14:17:21 6960 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除