-
绚丽的爆炸动画——ExplosionField
简介
Github上有一个很炫酷的动画开源项目——ExplosionField。
-
Android内存泄露分析利器——MAT
简介
讲到Android的内存泄露,就不能不提及内存泄露分析的利器——MAT。
MAT全称Eclipse Memory Analyzer,分为Eclipse插件版和独立版两个版本。
下载地址在MAT。
如果平时使用Eclipse开发,那么插件版MAT会非常方便,插件安装的update地址也在上述下载地址里面有。
如果平时使用Android Studio开发,那么就只能使用独立版的MAT了。
-
Android内存泄露浅析
基础知识
内存分配策略
根据编译原理观点,程序运行时的内存分配主要分为三块——静态存储区、堆区和栈区。
静态存储区
也称为方法区。
这块内存在程序编译的时候就分配好了,在程序整个运行期间都存在。
主要存放静态数据,全局static数据以及常量。
-
Python基础学习
-
BitmapShader实例——Titanic for Android
简介
本文以一个优秀的开源项目——Titanic来探讨BitmapShader的实用技巧。
-
Android绘图那些事——Canvas,Matrix,Shader
简介
Android自己的SDK提供了2D图形处理相关的API,大部分都在android.graphics和android.graphics.drawable包中。
绘制2D图形,有两种方式:- 在layout中定义图形和动画,主要用于绘制静态图形和预先定义好的动画。
- 直接在Canvas上绘制,一般用于需要重绘实现效果的View。
根据官方文档,绘画需要4个元素协同完成
To draw something, you need 4 basic components: A Bitmap to hold the pixels, a Canvas to host the draw calls (writing into the bitmap), a drawing primitive (e.g. Rect, Path, text, Bitmap), and a paint (to describe the colors and styles for the drawing).
-
AndroidStudio分析工具
内存监控(Memory Monitor)
AndroidStudio里的内存监控能实时的看到APP的内存情况,有助于分析内存问题。
具体用途包括:- 实时查看APP的内存分配情况
- 判断APP卡顿是否由于GC操作引起(当然,也可以卡顿的时候仔细观察Log,是否有大量GC日志)
- 判断App的Crash是否由内存溢出引起
主面板
-
AndroidStudio的小技巧
简介
AndroidStudio,没啥简介的,搞Android的都懂。
根据Philippe Breault的系列文章《Android Studio Tips Of the Day》提炼了一些有用的。基础技巧
快捷键调整
因为Eclipse程序员出生,所以,将快捷键模式调整成了Eclipse。
-
事件分发框架——EventBus浅析
简介及基本概念
EventBus是Android下一个开源的注册分发(publish/subscrib)事件总线,主要功能是简化了Android各组件以及后台线程之间的相互通信。
常见的比如网络请求返回通知UI,两个Fragment之间通信等,都可以通过EventBus实现。
EventBus主要包括三个元素:- Event:事件
- Subscriber:事件订阅者,接收特定的事件
- Publisher:事件发布者,用于通知Subscriber有事件发生
-
Android的UI分析利器——Hierarchy Viewer
简介
Android的SDK工具包中为我们提供了一个帮助我们更好地检视和设计用户界面(UI)的工具——Hierarchy Viewer。
Hierarchy Viewer能够以可视化的角度直观地获得UI布局设计结构和各种属性的信息,帮助我们优化布局设计。
官方说法如下:Sometimes your application’s layout can slow down your application.
To help debug issues in your layout, the Android SDK provides the Hierarchy Viewer.