- 博客(16)
- 资源 (6)
- 收藏
- 关注
原创 轮询操作优化
目录介绍 01.轮询操作是啥 02.轮训请求实践 2.1 与长连接相关的轮训请求 2.2 与页面相关的轮训请求 01.轮询操作是啥 什么叫轮训请求? 简单理解就是App端每隔一定的时间重复请求的操作就叫做轮训请求,比如:App端每隔一段时间上报一次定位信息,App端每隔一段时间拉去一次用户状态等,这些应该都是轮训请求。 为何不用长连接代替轮训操作? 长连接并不是稳定的可靠的,而执行轮训操作的时候一般都是要稳定.
2021-05-18 09:30:51
988
原创 对象池Pools优化
目录介绍 01.什么是对象池 02.glide哪里用到对象池 03.多条件key缓存bitmap 3.1 多条件key创建 3.2 key值的复用 04.glide对象池总结 05.学以致用对象池 5.1 使用场景 5.2 实现步骤 5.3 对象池使用 5.4 项目实践分享 06.对象池的容量 01.什么时对象池 对象池作用 在某些.
2021-05-18 09:28:05
331
原创 APP卡顿原因
目录介绍 01.Android卡顿原理 02.复杂的视图树 03.频繁的requestlayout() 04.UI线程被阻塞 05.内存抖动 01.Android卡顿原理 通过对Android绘制机制的了解,我们知道造成应用卡顿的根源就在于16ms内不能完成绘制渲染合成过程,因为Android平台的硬件刷新率为60HZ,大概就是16ms刷新一次。如果没能在16ms内完成这个过程,就会使屏幕重复显示上一帧的内容,即造成了卡顿。在这16ms内,需要完.
2021-05-18 09:22:31
1693
原创 APP瘦身优化
目录介绍 1.APK组成 1.1 APK组成部分 2.如何压缩优化apk 2.1 资源方面 2.2 代码方面 3.其他操作 3.1 lint检查 3.2 如何检测哪些图片未被使用 3.3 如何检测哪些无效代码 4.对比前后 1.APK组成1.1 APK组成部分 如下所示 res:包含未编译到的资源 resources.arsc,主要有图片资源文件;.
2021-05-18 09:20:47
198
原创 静态变量优化
目录介绍 01.不要用静态变量保存核心数据 02.实际开发中遇到的问题 01.为啥不要用静态变量保存核心数据 尽量不使用静态变量保存核心数据。这是为什么呢? 这是因为android的进程并不是安全的,包括application对象以及静态变量在内的进程级别变量并不会一直呆着内存里面,因为它很有会被kill掉。 当被kill掉之后,实际上app不会重新开始启动。Android系统会创建一个新的Application对象,然后启动上次用户离开时的acti.
2021-05-18 09:16:48
282
原创 图片优化
目录介绍 01.bitmap优化 02.glide加载优化 01.bitmap优化 加载图片所占的内存大小计算方式 加载网络图片:bitmap内存大小 = 图片长度 x 图片宽度 x 单位像素占用的字节数【看到网上很多都是这样写的,但是不全面】 加载本地图片:bitmap内存大小 = width * height * nTargetDensity/inDensity 一个像素所占的内存。注意不要忽略了一个影响项:Density 第一种.
2021-05-18 09:11:25
182
原创 APP启动页优化
目录介绍 01.存在白屏问题 1.1 问题描述 1.2 问题分析 02.解决白屏的办法 2.1 解决方案分析 2.2 第一种解决方案 2.3 第二种解决方案 03.Application启动速度优化 04.启动页面屏蔽返回按键 01.存在白屏问题1.1 问题描述 出现问题描述 android app启动页面黑屏的问题,android开发app启动时若没有做特殊处理.
2021-05-18 09:08:56
189
原创 APP线程优化
目录介绍 01.创建Thread弊端 02.为何要用线程池 03.那些地方使用线程池 01.创建Thread弊端 直接创建Thread实现runnable方法的弊端 大量的线程的创建和销毁很容易导致GC频繁的执行,从而发生内存抖动现象,而发生了内存抖动,对于移动端来说,最大的影响就是造成界面卡顿 线程的创建和销毁都需要时间,当有大量的线程创建和销毁时,那么这些时间的消耗则比较明显,将导致性能上的缺失 02.为何要用线程池..
2021-05-18 09:03:02
140
原创 代码优化
目录介绍 01.代码优化有哪些 02.lint检查去除无效代码 03.代码规范优化 04.View异常优化 05.去除淡黄色警告优化 06.合理使用集合 07.Activity不可见优化 08.节制的使用Service 01.代码优化有哪些 都是一些微优化,在性能方面看不出有什么显著的提升的。使用合适的算法和数据结构是优化程序性能的最主要手段。 02.lint检查去除无效代码 lint去除无效资源和代码.
2021-05-18 08:57:37
88
原创 懒加载优化
目录介绍 1.什么是懒加载 1.1 什么是预加载 1.2 懒加载介绍 1.3 懒加载概括 2.实际应用中有哪些懒加载案例 2.1 ViewPager+Fragment组合 2.2 分析源码 3.ViewPager中setOffscreenPageLimit(int limit)相关源码 4.关于ViewPager与Fragment懒加载 4.1 遇到的问题 4.2 主
2021-05-18 08:54:32
161
原创 布局优化
目录介绍 01.常见布局优化方法 02.使用include标签 03.ViewStub深度解析 04.视图层级<merge/> 05.其他一些小建议 01.常见布局优化方法 布局优化的核心就是尽量减少布局文件的层级,常见的方式有: 多嵌套情况下可使用RelativeLayout减少嵌套。 布局层级相同的情况下使用LinearLayout,它比RelativeLayout更高效。 使用<i.
2021-05-17 16:31:46
1494
2
原创 网络优化
目录介绍 01.图片分类优化 02.获取网络数据优化 03.网络请求异常拦截优化 01.图片分类优化 图片网络优化 比如我之前看到豆瓣接口,提供一种加载图片方式特别好。接口返回图片的数据有三种,一种是高清大图,一种是正常图片,一种是缩略小图。当用户处于wifi下给控件设置高清大图,当4g或者3g模式下加载正常图片,当弱网条件下加载缩略图【也称与加载图】。 简单来说根据用户的当前的网络质量来判断下载什么质量的图片(电商用的比较多)。豆瓣..
2021-05-17 16:29:09
159
原创 内存泄漏优化
目录介绍: 01.什么是内存泄漏 02.内存泄漏造成什么影响 03.内存泄漏检测的工具有哪些 04.关于Leakcanary使用介绍 05.错误使用单例造成的内存泄漏 06.Handler使用不当造成内存泄漏 07.Thread未关闭造成内容泄漏 08.错误使用静态变量导致引用后无法销毁 09.AsyncTask造成的内存泄漏 10.非静态内部类创建静态实例造成内存泄漏 11.不需要用的监听未移除会发生
2021-05-17 16:22:30
348
原创 Android 流行网络框架
缓存DiskLruCache Java实现基于LRU的磁盘缓存2.图片加载Android Universal Image Loader 一个强大的加载,缓存,展示图片的库Picasso 一个强大的图片下载与缓存的库Fresco 一个用于管理图像和他们使用的内存的库Glide 一个图片加载和缓存的库图片处理Picasso-transformations 一个为Picasso提供多种图片变换的库Glide-transformations 一个为Glide提供多种图片..
2020-05-25 09:40:02
449
转载 打造Android微信朋友圈下拉刷新控件
微信朋友圈我们都经常用,朋友圈的下拉刷新比较有意思,我们今天将要模仿打造微信朋友圈的下拉刷新控件,当然微信的这种刷新设计可能不是最好的,实际项目中你可以用V4包里面的SwipeRefreshView或者Chris Banes的AndroidPullRerfresh,看产品经理的设计。 思路 我们初步分析下,界面上主要有二个控件,一个彩虹状的圆形LoadingView,一个是ListView,那么
2016-07-26 15:42:40
534
转载 跟App相关的辅助类
/** * 跟App相关的辅助类 * * @author zhy * */public class AppUtils{private AppUtils(){/* cannot be instantiated */throw new UnsupportedOperationException("cannot be instantiated");
2016-07-26 12:31:31
245
Postman-linux-ia32-7.2.2.tar.gz
2020-06-08
Postman-linux-x64-7.25.3.tar.gz
2020-06-08
Android OTG 功能实现
2018-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人