自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Android事件传递

Linux内核提供了一个Input子系统,Input子系统会在/dev/input/路径下创建硬件输入设备的节点,一般情况下在我们的手机中这些节点是以eventX来命名的。Android读取事件信息就是从/dev/input/目录下的设备节点中读取出来的。

2017-05-31 10:23:51 328

原创 Android ORM框架之greenDAO

一、什么是ORM? ORM是object relation mapping的缩写,即对象关系映射,简单的说就是对象模型和关系模型的一种映射。ORM基于三个核心原则,简单:以最基本的形式建模数据;传达性:数据库结构被任何人都能理解的语言文档化;精确性:基于数据模型创建正确标准化的结构。

2017-04-29 15:07:22 296

原创 Android窗口管理之一--创建窗口

在android系统中窗口系统是一个很庞大很复杂的系统,对系统中的所有窗口进行管理是由窗口管理服务WindowManagerService来负责处理的,它是一个系统服务,扮演C/S模式中的服务端角色,而上层应用就是客户端,客户端负责请求创建窗口和使用窗口,服务端完成窗口的维护,窗口显示等。

2017-03-26 12:01:48 501

原创 Android进程间通信

Android系统是基于Linux内核的,Linux系统也有着丰富的IPC方式,而Android采用了Binder机制。

2017-02-27 20:43:32 288

原创 Android View显示过程

之前,我们研究了Android应用的启动过程和退出过程,以及布局文件的加载过程,今天我们继续按照这条线,研究布局文件加载之后,View是如何被显示到屏幕上来的,也就是研究View的显示过程。下面我将介绍两个方面的内容:1、从加载layout文件到view的测量、布局和绘制的全过程。2、surface、surfaceFlinger与view显示的关系。

2017-01-28 14:14:47 571

原创 Android单元测试

单元测试是编码工作的一部分,是开发中非常重要的一个环节。现在有一种TDD的开发模式很流行,TDD(Testing Driven Development),以测试驱动开发,这足以说明单元测试对于开发的重要性,尤其对于互联网产品开发显得格外重要,因为互联网产品有一个特点是快速多迭代,正是这个特点,单元测试的价值就更加明显。

2016-11-30 09:47:37 269

原创 Android Studio调试技巧

由于之前的工作一直是维护android系统,与framework相关的工作,定位问题全使用打Log然后观察Log的方式,没法使用debug的方式。后来改做上层应用,一开始使用eclipse开发,由于使用eclipse来调试android应用不是非常快捷方便,所以我仍然首选打Log的方式定位问题,极少用到debug。直到改用android studio来开发,我就爱上debug。

2016-10-29 10:20:17 369

原创 Android成长之路-事件消费

一、Android事件构成 Android中用户操作事件比较多,包括点击、长按、移动、拖拽等,还分单手指多手指操作等,这些都构成了Android的事件响应。所有的操作事件都由三个基础部分组成:ACTION_DOWN,ACTION_MOVE,ACTION_UP。

2016-08-29 20:00:02 581

原创 Android应用与MVP模式

一、什么是MVP? 在做大型软件项目的时候,架构师通常会慎重考虑使用某一个架构,这是至关重要的。在大型项目中,随着代码量越来越庞大,模块越来越错综复杂,如果没有一个好的架构,整个项目就像是一张蜘蛛网,没有人可以读懂,维护起来就非常困难,对于需求的变更与扩展就难于登天,甚至是毁灭性的。通过一个好的软件架构设计,可以使程序模块化,做到模块内部的高聚合和模块之间的低耦合。

2016-07-24 21:18:55 414

原创 Android成长之路之应用启动过程

引子:在Android代码中,我们通常调用startActivity就可以启动另外一个应用了,非常的简单。从最终用户来看,启动一个应用就是在桌面上点击一个应用图标。但是点击桌面的应用图标最终依然是调用startActivity来启动对应的应用,所以我们今天分析一下startActivity的执行过程。

2016-06-26 11:26:32 370

原创 Android成长之路之layout加载过程

相信大部分初学者会对xml布局文件是如何加载到Activity里成为界面视图感到好奇,甚至一些同学都没有想过这个问题,他们会说:setContentView(layoutResId), so easy! 然而忽略了这一句代码背后的故事。当我们静下来去学习他们背后的过程与原理后,你会发现过程很复杂,原理很简单,收获很丰富,感觉很棒滴!今天,我们就从最简单且用到最多的开始学习—布局文件加载之谜。

2016-05-21 10:33:06 2064

空空如也

空空如也

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

TA关注的人

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