自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

江湖夜雨十年灯

天地悠悠,长风破浪会有时

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

转载 ImageLoader----内存缓存

ImageLoader是一个图片缓存的开源库,提供了强大的图片缓存机制,很多开发者都在使用,今天我就和大家一起开始学习这套开源框架。 Imageloader分为二级缓存:内存缓存和本地文件缓存(也有人说是三级缓存,第三级网络缓存。但是博主认为网络部分不应算在缓存部分。纯属个人意见请勿喷!) 这篇博文我就和大家一起来了解一下内存缓存部分。  缓存部分的实现在cache包下,cache

2016-02-29 14:35:23 513

转载 使用AndroidStudio分析和解决ImageLoader引起OOM问题

公司正在做的项目使用到了ImageLoader来加载大量图片,我也是第一次使用,就拿来直接用了。写完的代码运行很正常的加载图片,并没有发现什么问题。但是软件拿给测试部门测试的时候发现了问题。当多次打开软件中一个游览大图片的Activity(每次游览的图片都不一样)后,这时在这个Activity中点击返回后,屏幕会突然变黑,然后回到了软件的MainActivity,并没有回到上一级Activity,

2016-02-29 14:26:07 2304

转载 java弱引用(WeakReference)和SoftReference的区别以及在android内存处理的作用

weakReference一般用来防止内存泄漏,要保证内存被VM回收 softReference的话,好像多用作来实现cache机制. WeakReference: 弱引用对象,它们并不禁止其指示对象变得可终结,并被终结,然后被回收。弱引用最常用于实现规范化的映射。  假定垃圾回收器确定在某一时间点上某个对象是弱可到达对象。这时,它将自动清除针对此对象的所有

2016-02-25 15:54:26 436

转载 三个启蒙寓言解读大企业的内部创业困局

近年来,国内诸多行业龙头企业包括中国电信、海尔、长虹、阿里巴巴、腾讯纷纷建立内部创业孵化机制,鼓励员工内部创业或者设立投资基金以及创业孵化基地培育新项目。上周,在"红衣教主"的年会讲话中也提到360将在2016年重点进行内部创业的扶持。然而,鼓励内部创业的初衷虽然美好,很多大企业对内部创业的扶植力度也不小,可实践结果却常常不能尽如人意。究竟制约企业内部创业的瓶颈在哪?哪些制度设计的内部创业才能真正

2016-02-24 19:50:47 1181

转载 内存不足卸载软件时,什么样的APP会被用户留下?

我的手机只有16G,经常会在打开相机时提示内存不足,有时急着要拍照,相册整理起来太费时间,就会选择卸载一两个APP。卸载率是很难监测的一个数据,我们只能知道用户连续30天以上没有登录了,但不能判定什么时候用户卸载。也许产品经理们苦苦思考的卸载场景,其实很简单——内存不足,你的APP的重要性比不上我的自拍。而什么样的APP会让我们选择留下来,总结下来就是两个字

2016-02-24 14:33:05 586

转载 Android性能优化之Activity 泄漏

随着移动互联网的发展,android app开发越发火爆。大家都知道一个app的成功与否,与app的性能体验密不可分。如果一个app打开时间长、滑动不流畅等等,那么相信不管你的产品多么棒,运营多么牛叉,也不会获得用户的青睐。因此app的开发中,提升性能尤其重要。    当然,从事android开发的童鞋应该都知道app性能提升的重要性,但难点在于如何提升android  a

2016-02-22 14:19:25 482

转载 Android内存优化之OOM

Android的内存优化是性能优化中很重要的一部分,而避免OOM又是内存优化中比较核心的一点。这是一篇关于内存优化中如何避免OOM的总结性概要文章,内容大多都是和OOM有关的实践总结概要。理解错误或是偏差的地方,还请多包涵指正,谢谢!(一)Android的内存管理机制Google在Android的官网上有这样一篇文章,初步介绍了Android是如何管理应用的进程与内存分配:http

2016-02-22 14:12:03 332

转载 使用LocalBroadcastManager

LocalBroadcastManager是Android Support包提供了一个工具,是用来在同一个应用内的不同组件间发送Broadcast的。使用LocalBroadcastManager有如下好处:发送的广播只会在自己App内传播,不会泄露给其他App,确保隐私数据不会泄露其他App也无法向你的App发送该广播,不用担心其他App会来搞破坏比系统全局广播更加高效和

2016-02-22 10:11:15 293

转载 成功程序员的8个习惯

对成功的渴望或许是我们与生俱来写在基因里的一部分。成功会让人幸福,并且几乎每个人都在争取幸福。当我们感到幸福的时候,我们大脑中的化学物质会迸发积极的情感,激励我们获取更多的成功。成功的职业生涯通常是指规定时间内,发布高质量且被认可的工作。这对于IT开发人员也没什么不同。成功的开发人员能在预估范围内编写出高质量的代码,并通过发布伟大的产品让利益相关者满意。那么开发人员如何才能做到这一

2016-02-17 15:19:04 288

原创 同步,易变,内存模型

1.如果一个线程正在执行同步的方法,其他线程试图调用同一对象的同步方法必须要等到前一个线程的完成;2.当同步的方法退出后,所有其他线程可看到对象的更新状态。   事实上,java的内存模型就是这样,一个线程中变量的修改可能不会立即对其他线程可见。事实上,也许永远不可见。如下,如果一个线程调用MyClass.loop(),将来的某个时间点,另一个线程调用了MyClass.setValue(1

2016-02-16 15:44:26 248

原创 事务(sqlite本地数据操作优化)

本地db操作中,创建事务有两个特性:原子提交 这个特性很重要,原子提交意味着数据库中所有修改要么都做要么都不做。比如你需要插入1000条数据,要么成功建立这1000条数据,要么没有插入任何东西,并不会只建立部分的列表数据(普通的for循环insert数据某些情况会有丢失,我们把“插入1000条数据”当成一条事务,因而他要么百分百成功,要么就就失败,没有中间状态,其实sqlite插入数据

2016-02-15 17:29:39 525

转载 Android Looper

Looper:消息泵,不断地从MessageQueue中抽取Message执行。因此,一个MessageQueue需要一个Looper。Android系统的消息队列和消息循环都是针对具体线程的,一个线程可以存在(当然也可以不存在)一个消息队列和一个消 息循环(Looper),特定线程的消息只能分发给本线程,不能进行跨线程,跨进程通讯。但是创建的工作线程默认是没有消息循环和消息队列的,如果想让该

2016-02-15 14:33:34 245

转载 Android 性能优化 TraceView工具的使用

一、TraceView工具如何使用TraceView有两种启动/关闭分析方式:(1) 第一种使用方法演示1、 选择跟踪范围在想要根据的代码片段之间使用以下两句代码[java] view plain copy print?Debug.startMethodTracing("love_world

2016-02-15 11:05:32 447

转载 代码才是最好的注释

一直以来都存在代码注释的作用的讨论。很多人认为注释是不必要的,写注释那是因为代码可读性太差了。我也同意这个原则。如果必须添加注释,我觉得可以添加一些解释代码为什么,而不是做什么的注释。下面我举个例子说明该如何除去代码中的注释。    我们直接看代码,下面的代码是我要对注释进行清除的例子。(这段代码只是作为一个例子,没有做过多的考虑。) 1 public String

2016-02-01 10:35:43 352

空空如也

空空如也

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

TA关注的人

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