分类目录 : Android性能优化

浅谈LruCache源码实现

LruCache是Android在3.1版本中新增的一个缓冲类,在低于3.1版本中可以使用support V4包中的LruCache。LruCache是基于LRU缓存算法实现的,LRU(Least Recently Used)缓存算法即最近最少使用,它的核心思想是当缓存满时,会优先淘汰那些近期最少使用的缓存对象。 LRU算法最早接触还是在学习操作系统时接触的,在本文中并不会详细介绍该算法的实现, [...]

Android内存溢出OOM常见内存泄漏

在上一篇文章中我们对Android中内存有了一个基本的了解,在本文继续介绍有关内存溢出的相关点。当内存泄漏超过一定的界限,必然会引起内存溢出,有些内存泄漏在开发中是比较常见的,接下来通过介绍几种常见额内存泄漏情形,以便在开发过程中采取必要的措施以此防止内存泄漏。 如下是Android开发者在开发中比较常见的几种内存泄漏,并给出了相对应的防止内存泄漏的解决方式。 单例模式引起的内存泄漏 单例模 [...]

Android内存溢出OOM简单介绍

前言 在日常的Android开发中,每个开发者或多或少都会遇到过OutOfMemoryError这样崩溃信息。如果工程稍微大一些,在monkey测试的崩溃日志也是比较常见的一种。如下是比较常见的一些报错信息: Android:java.lang.OutOfMemoryError: Failed to allocate a 1340012 byte allocation with 72503 f [...]

Android ANR的产生与分析

ANR即Application Not Responding应用无响应,一般在ANR的时候会弹出一个应用无响应对话框。也许有些开发者在使用某些手机开发中不在弹出应用无响应弹出框,特别是国产手机Android4.0以上的系统中,即使在开发者选项中设置了“显示所有应用无响应-为后台应用显示无响应ANR对话框”,主要是因为在某些国产手机系统中就将该选项屏蔽了,应用超过了一定时间无响应也不会弹出ANR对话 [...]

Android布局优化之include、merge、ViewStub的使用

本文针对include、merge、ViewStub三个标签如何在布局复用、有效减少布局层级以及如何可以按需加载三个方面进行介绍的。 复用布局可以帮助我们创建一些可以重复使用的复杂布局。这种方式也意味着应用中任何在多个布局文件之间使用的通用布局都可以被提取出来,然后分别进行管理,使用的时候再进行组合。因此当我们在自定义一些View的时候,使用复用布局会更简单方便。在平常开发中使用可以 [...]

Android加载图片完成后的处理方式

概述 本篇主要讲述的是Android将图片加载之后如何来显示图片,以及GridView或者ListView批量异步加载图片后出现错位、重复、闪烁的原因分析,最终给出目前比较流行也是常用的解决方案。 GridView或者ListView在填充内容时一般都会自定义一个适配器,重写BaseAdapter或者其他的Adapter,然后在getView方法中为了节省内存占用,复用View,同 [...]
共 1 页 1