一. Linux进程优先级概念 Linux采用了两种不同的优先级范围: 第一种是nice值,它的范围是从-20到+19,默认值为0;越大的nice值意味着更低的优先级-nice似乎意味着你对系统中的其他进程更“有待”。相…
分类:移动开发
Android平台开源log工具-Logger
一. Logger介绍 Logger是一个Android平台下简单、优雅、功能强大的日志工具。github: Logger Logger提供: 线程信息 类信息 函数信息 格式化的json格式输出 优雅的新行”…
ViewManager接口分析
一. ViewManger接口定义 public interface ViewManager{ /** * 将view添加到一个Activity的window上 */ public void addView(View v…
Android事件传递流程-从ViewRootImpl到View
Step1. 从ViewRootImpl到DecorView 1.1 ViewRootImpl.dispatchInputEvent public void dispatchInputEvent(InputEvent e…
Android WatchDog原理分析
一 . WatchDog作用 SytemServer进程中运行将近一百种服务,是最有可能出现问题的进程,而且这些进程为系统提供核心的服务,一旦出现问题,将影响系统的正常运行。因此,有必要对SystemServer中的各种…
Android中View的测量measure过程
本文中,以自定义ViewGroup中重写onMeasure入口,来分析View的测量过程: 1.自定义ViewGroup中重写onMeasure /** * 计算所有ChildView的宽度和高度 然后根据ChildVi…
VelocityTracker用法
VelocityTracker是用来计算触摸事件速度的帮助类,主要用法如下: 获取对象: if(mTracker == null){ mTracker = VelocityTracker.obtain(); }else{…
Activity setContentView过程分析
1.Activity.setContentView public void setContentView(int layoutResID) { getWindow().setContentView(layoutResID…
DecorView显示过程
当Activity执行完setContentView后,界面元素已被添加到DecorView中。从ActivityThread的handleResumeActivity方法开始,执行DecorView的显示过程。具体流程…
管理应用内存
本文翻译自谷歌开发者网站: https://developer.android.com/topic/performance/memory.html#remove 内存在任何软件开发环境中都是一种宝贵资源,但在物理内存通常…
Android创建绑定服务的3种方法
注:本文大部分内容来自安卓开发者网站:https://developer.android.com/guide/components/bound-services.html 创建提供绑定的服务时,您必须提供 IBinder…
ListView复用View原理分析
ListView继承自ViewGroup,在onLayout时,需要获取View并且将View放置到制定位置,本文以ListView的onLayout方法为入口,来分析ListView显示和复用View过程。 1. on…