自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

杨充

万事起于忽微,量变引起质变!

  • 博客(218)
  • 收藏
  • 关注

原创 21.移动端防抓包实践

移动端防抓包实践

2019-07-17 21:12:07 1771 2

原创 20.常见代码优化实践

常见代码优化实践

2019-07-13 16:34:14 288 1

原创 19.App瘦身优化实践

App瘦身优化实践

2019-07-02 17:05:03 193

原创 18.App稳定性专项实践

App稳定性专项实践

2019-07-01 18:04:23 788 1

原创 17.App页面UI优化实践

App页面UI优化实践

2019-06-28 16:48:19 604

原创 09.线程优化实践操作

线程优化实践操作

2019-06-26 17:57:54 279

原创 16.App启动优化实践

App启动优化实践

2019-06-21 15:57:15 217 1

原创 15.进程优化设计实践

进程优化设计实践

2019-06-17 14:03:30 255

原创 14.FPS监测设计实践

FPS监测设计实践

2019-06-13 12:27:50 1604 2

原创 13.内存治理优化实践

内存治理优化实践

2019-06-10 14:41:47 2213 4

原创 12.内存监控设计方案

内存监控设计方案

2019-06-04 15:52:50 1925

原创 11.OOM异常优化实践

OOM异常优化实践

2019-06-03 17:34:33 357 1

原创 10.高性能图片优化方案

高性能图片优化方案

2019-05-29 13:15:19 723

原创 08.网络分析&优化实践

目录介绍1.遇到的问题和需求1.1 遇到的问题有哪些1.2 遇到的需求1.3 多线程通过实现Runnable弊端1.4 为什么要用线程池2.封装库具有的功能2.1 常用的功能3.封装库的具体使用3.1 一键集成3.2 在application中初始化库3.3 最简单的runnable线程调用方式3.4 最简单的异步回调4.线程池封装思路介绍4.1 自定义Runnabl...

2019-05-24 10:59:26 1576 1

原创 07.卡顿治理优化实践

卡顿治理优化实践

2019-05-22 18:58:19 1120

原创 06.卡顿监控设计实践

卡顿监控设计和治理

2019-05-17 09:37:28 132 1

原创 05.CPU消耗优化实践

05.CPU消耗优化实践

2019-05-13 09:47:37 190 1

原创 04.ANR监控实践和治理

ANR监控实践和治理

2019-05-08 15:04:41 1390 1

原创 03.Native崩溃治理实践

Native崩溃治理实践

2019-05-05 09:44:40 822 1

原创 02.崩溃治理优化实践

崩溃治理优化实践

2019-04-28 10:20:46 691

原创 01.崩溃捕获设计实践方案

崩溃捕获设计实践方案

2019-04-22 09:39:40 3500 2

原创 17.如何设计工业级Map

目录介绍01.造成ANR的原因02.问题描述03.ActivityThread中main方法04.Looper.loop()方法无限循环05.处理消息handleMessage方法06.loop的循环消耗性能吗?07.得出结论好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug...

2019-04-20 16:13:39 2030 2

原创 16.如何设计工业级Set

目录介绍01.什么是对象池02.glide哪里用到对象池03.多条件key缓存bitmap3.1 多条件key创建3.2 key值的复用04.glide对象池总结05.学以致用对象池5.1 使用场景5.2 实现步骤5.3 对象池使用5.4 项目实践分享06.对象池的容量好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Androi...

2019-04-10 19:15:04 582

原创 15.如何设计工业级List

目录介绍01.栈由简单数据实现1.1 简单数组代码实现1.2 可能出现问题1.3 性能和局限性02.栈由动态数组实现2.1 基于简单数组存在问题2.2 第一种解决办法2.3 第二种解决办法2.4 动态数组实现栈代码2.5 性能和局限性03.栈由链表实现3.1 使用链表的优势3.2 链表实现栈代码3.3 性能和局限性04.Android栈Stack源...

2019-04-09 13:38:18 519 1

原创 14.如何快速查找元素

目录介绍1.复杂页面库介绍2.本库优势亮点2.1 支持多种状态切换管理2.2 支持添加多个header和footer2.3 支持侧滑功能和拖拽移动2.4 其他亮点介绍3.如何使用介绍3.1 最基础的使用3.2 添加下拉刷新和加载更多监听3.3 添加header和footer操作3.4 设置数据和刷新3.5 设置adapter3.6 设置条目点击事件3.7 设置...

2019-04-07 12:24:37 295 1

原创 13.排序的思想和优化

13.排序的思想和优化目录介绍1.基本思想很好理解,从字面意思就知道类似于冒泡。在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。2.排序过程比较相邻的两个数据,如果第二个数小,就交换位置。从后向前两两比较,一直到比较最前两个数据。最终最小数被交换到起始的位置,这样第一个最小数的位置就排好。继续重复上述过程,依次将第2.3…n-1个最小数排

2019-03-29 09:33:01 105 1

原创 12.散列表设计思想和原理

目录介绍01.对象拷贝有哪些02.理解浅拷贝2.1 什么是浅拷贝2.2 实现浅拷贝案例03.理解深拷贝3.1 什么是深拷贝3.2 实现深拷贝案例04.序列化进行拷贝4.1 序列化属于深拷贝4.2 注意要点4.3 序列化案例05.延迟拷贝06.如何选择拷贝方式07.数组的拷贝7.1 基本数据类型数组7.2 引用数据类型数组08.集合的拷贝...

2019-03-25 15:50:53 322 1

原创 11.Hash常见操作实践

目录介绍01.invalidate,requestLayout,postInvalidate区别02.invalidate深入分析03.postInvalidate深入分析04.requestLayout深入分析05.ViewRootImpl作用分析06.这几个方法总结好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python...

2019-03-23 09:51:16 245

原创 10.递归经典设计场景

目录介绍01.什么是绑定02.静态和动态绑定03.辅助理解jvm图04.动态绑定编译原理05.动态绑定运行原理06.两者之间区分好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,持续完善……开源的文件是markdo...

2019-03-14 17:02:58 753 1

原创 09.图表设计思想和原理

目录介绍01.基本类型和引用类型02.什么是值传递03.什么是引用传递04.通过案例分析05.案例过程分析06.得出的结论好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,持续完善……开源的文件是markdown格...

2019-03-14 17:02:17 247 1

原创 08.红黑树经典设计场景

目录介绍01.static的作用02.static变量存储位置03.用static静态变量潜在性问题04.静态变量的生命周期05.静态变量何时销毁06.静态引用的对象回收07.静态方法变量内存图好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量...

2019-03-14 17:01:27 537 1

原创 07.二叉树设计和用途

目录介绍01.项目介绍02.项目运行03.项目部分介绍04.项目组件化结构05.项目版本更新06.项目第三方库07.项目遇到bug08.项目截图展示09.项目优化处理10.组件化博客11.其他介绍01.项目介绍1.1 项目简介项目整体架构模式采用:组件化+MVP+Rx+Retrofit+design+Dagger2+阿里VLayout+腾讯X5+腾讯bugly包...

2019-03-06 16:38:44 869

原创 06.队列设计思想和原理

目录介绍01.创建项目步骤1.1 项目搭建1.2 项目功能02.自定义注解03.创建Processor04.compiler配置文件05.编译jar06.如何使用07.编译生成代码08.部分源码说明8.1 Process类-process方法8.2 OnceProxyInfo代理类8.3 OnceMethod类好消息博客笔记大汇总【16年3月到至今】...

2019-02-27 18:46:32 502 1

原创 05.栈设计思想和原理

栈设计思想和原理

2019-02-24 16:28:59 227 1

原创 04.链表实现Lrc算法

目录介绍01.原生跳转实现02.实现组件跳转方式2.1 传统跳转方式2.2 为何需要路由03.ARouter配置与优势04.跨进程组件通信4.1 URLScheme4.2 AIDL4.3 BroadcastReceiver4.4 路由通信注意要点05.ARouter的结构06.ARouter的工作流程6.1 初始化流程6.2 跳转页面流程07.AR...

2019-02-20 17:54:05 898

原创 03.链表设计思想和用途

目录介绍8.0.0.1 简述Android的事件分发机制?dispatchTouchEvent方法的作用是什么?说下View和ViewGroup分发事件?8.0.0.2 onInterceptTouchEvent方法作用是什么?onTouchEvent的方法的作用是什么?8.0.0.4 滑动冲突有哪些场景?滑动冲突处理原则是什么?滑动冲突解决办法有哪些?分别是如何解决的?8.0.0.5 ...

2019-02-14 16:37:44 175 1

原创 02.数组深入浅出分析

目录介绍7.0.0.1 加载bitmap图片的时候需要注意什么?为何bitmap容易造成OOM?如何计算Bitmap占用内存?7.0.0.2 如何理解recycle释放内存问题?图片加载到内存其实有两部分数据,这是为何?7.0.0.3 如何在不压缩图片的情况下加载高清大图?加载图的机制是什么,为何不会内存泄漏?7.0.0.7 LRU算法的原理?核心思想是什么?如果缓存满了的话,什么方法来...

2019-02-14 16:33:18 165 1

原创 01.数据结构算法指引

目录介绍1.为什么要组件化1.1 为什么要组件化1.2 现阶段遇到的问题2.组件化的概念2.1 什么是组件化2.2 区分模块化与组件化2.3 组件化优势好处2.4 区分组件化和插件化2.5 application和library3.创建组件化框架3.1 传统APP架构图3.2 组件化需要考虑问题3.3 架构设计图3.4 组件通信是通过路由转发3.5 解...

2019-01-22 17:40:38 317 1

原创 35.切忌避免过度设计

目录介绍6.0.0.1 谈谈消息机制Hander作用?有哪些要素?流程是怎样的?6.0.0.2 为什么一个线程只有一个Looper、只有一个MessageQueue,可以有多个Handler?6.0.0.3 可以在子线程直接new一个Handler吗?会出现什么问题,那该怎么做?6.0.0.4 Looper.prepare()能否调用两次或者多次,会出现什么情况?6.0.0.5 为什么...

2019-01-11 13:08:28 199 1

原创 34.重构技术手段分析

目录介绍4.0.0.1 Android中有哪几种类型的动画,属性动画和补间动画有何区别?补间动画和属性动画常用的有哪些?4.0.0.2 View动画为何不能真正改变View的位置?而属性动画为何可以?属性动画是如何改变View的属性?4.0.0.3 补间动画是如何作用于view的,从源码角度分析以下?为何说补间动画没有改变View的属性?4.0.0.6 属性动画插值器和估值器的作用?插值...

2019-01-11 11:56:11 200 1

空空如也

空空如也

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

TA关注的人

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