代码改变世界

Android 核心分析 之七Service深入分析

2013-12-26 10:23 by kingshow, 227 阅读, 0 推荐, 收藏, 编辑
摘要:Service深入分析 上一章我们分析了Android IPC架构,知道了Android服务构建的一些基本理念和原理,本章我们将深入分析Android的服务。Android体系架构中三种意义上服务: Native服务 Android服务 Init空间的服务,主要是属性设置,这个IPC是利用Socket来完成的,这个我将在另外一章来讨论。 Navite服务,实际上就是指完全在C++空间完成的服务,主要是指系统一开始初始化,通过Init。rc脚本起来的服务,例如Service Manger service,Zygote service,Media service , ril_demon... 阅读全文

Android 核心分析 之六 IPC框架分析 Binder,Service,Service manager

2013-12-26 10:21 by kingshow, 318 阅读, 0 推荐, 收藏, 编辑
摘要:IPC框架分析 Binder,Service,Service manager 我首先从宏观的角度观察Binder,Service,Service Manager,并阐述各自的概念。从Linux的概念空间中,Android的设计Activity托管在不同的的进程,Service也都是托管在不同的进程,不同进程间的Activity,Service之间要交换数据属于IPC。Binder就是为了Activity通讯而设计的一个轻量级的IPC框架。 在代码分析中,我发现Android中只是把Binder理解成进程间通讯的实现,有点狭隘,而是应该站在公共对象请求代理这个高度来理解Binder,Ser... 阅读全文

Android 核心分析 之五基本空间划分

2013-12-26 10:17 by kingshow, 313 阅读, 0 推荐, 收藏, 编辑
摘要:基本空间划分 Google给了我们一张系统架构图,在这张图上我们可以看到Android的大体框架组成。 11.jpg (175.6 KB, 下载次数: 0)下载附件 保存到相册 2012-3-19 10:49 上传 从上图可以看到:Android Applications,Application Framework,Dalvik Virtual Machine,Linux。如果将Android泛化,我们可以将系统划分成两部分: 22.jpg (2.96 KB, 下载次数: 0)下载附件 保存到相册 2012-3-19 10:49 上传 但是为了研究的方便我们先看最为本质的三层,上面是A... 阅读全文

Android核心分析之四手机的软件形态

2013-12-26 10:15 by kingshow, 263 阅读, 0 推荐, 收藏, 编辑
摘要:手机的软件形态 上节我给出了手机的硬件树,本节将给出手机软件形态树。主要突出手机软件涵盖的内容。通过该思维导图,我们可以看到手机软件所涉及到的方方面面,Android所涉及到的内容也不会超过下面所示太多,这个也是Andoid系统外特性空间所要展示的,这个也是Android设计者需要考虑管理的大部分内容,通过下面的整理,我们可以让我们的思维更加贴近Android设计意图,从而更深入的了解Android中各种组成的由来,这个就是前面讲到的分析思想之一从退到源头出发,从思考最终极的问题开始。 1.jpg (84.22 KB, 下载次数: 6)下载附件 保存到相册 2012-3-19 10:45 .. 阅读全文

Android是什么 之三手机之硬件形态

2013-12-26 10:09 by kingshow, 260 阅读, 0 推荐, 收藏, 编辑
摘要:手机硬件形态 本节可能与Android无关,但是Android系统现在这个阶段更多的是移动终端形态的开发平台,本节给出了Android背后的工作-Android管理的硬件是什么,Android的本质就是要管理好这些硬件部分,为用户提供一个体验更好,速度更快的智能移动终端。对手机硬件形态的认识是要让我们对手机硬件组成有个感性的认识,让程序员知道系统中的代码是管理那一部分的,即我们堆砖头的目的是什么,让思维有一个伸展。 为了对手机这类嵌入式系统有一个较为深入的了解,我制作了如下的手机硬件结构思维导图,在这张图上我们可以看到组成手机硬件的有哪些,初步了解到手机管理平台为什么要那么多的管理框架和... 阅读全文

Android核心分析 之二方法论探讨之概念空间篇

2013-12-26 10:07 by kingshow, 228 阅读, 0 推荐, 收藏, 编辑
摘要:方法论探讨之概念空间篇 我们潜意识就不想用计算机的方式来思考问题,我们有自己的思维描述方式,越是接近我们思维描述方式,我们越容易接受和使用。各种计算机语言,建模工具,不外乎就是建立一个更接近人的思维方式的概念空间,再使用工具从该概念空间向另外一个概念空间映射,我称之为人性思维空间向01序列描述空间的一个映射。实现方面来看,系统就是一个翻译器,将机器性更加人性化的一种机制。大学计算机经典课“计算机体系结构”,其他的可以忘记,但是下面这个图不能忘记: 2.jpg (6.49 KB, 下载次数: 0)下载附件 保存到相册 2012-3-19 10:28 上传 这个就是概念空间最本质的原型体现:作.. 阅读全文

Android核心分析 之一分析方法论探讨之设计意图

2013-12-26 10:04 by kingshow, 584 阅读, 1 推荐, 收藏, 编辑
摘要:为什么要研究Android,是因为它够庞大,它够复杂,他激起了我作为一个程序员的内心的渴望,渴望理解这种复杂性。我研究的对象是作为手机开发平台的Android软件系统部分,而不是Dalvik虚拟机本身。 作为一个从其他平台装接过来的程序员,要从事Andoid平台系统开发,我的关于手机平台上积累的知识已经不能满足需要了,Android为我们带来了大量的新名词,Activity,Manifest,INTENT,Service,Binder,Dalvik虚拟机,Framework,Linux,Navtive ,JNI…。通过在源代码,在开发社区,在开发博客,甚至在招聘过程中,我不断的寻求Andr.. 阅读全文

Android.mk文件语法规范

2013-12-25 17:40 by kingshow, 400 阅读, 0 推荐, 收藏, 编辑
摘要:Android.mk是Android提供的一种makefile文件,用来指定诸如编译生成so库名、引用的头文件目录、需要编译的.c/.cpp文件和.a静态库文件等。要掌握jni,就必须熟练掌握Android.mk的语法规范。一、Android.mk文件的用途一个android子项目中会存在一个或多个Android.mk文件1、单一的Android.mk文件直接参考NDK的sample目录下的hello-jni项目,在这个项目中只有一个Android.mk文件2、多个Android.mk文件如果需要编译的模块比较多,我们可能会将对应的模块放置在相应的目录中,这样,我们可以在每个目录中定义对应的A 阅读全文

四大颜色的不同

2013-12-24 10:05 by kingshow, 360 阅读, 0 推荐, 收藏, 编辑
摘要:红色:热情 开朗 乐于与人交往 同时容易相信别人 能带给团体中很多欢乐氛围!蓝色:完美主义 做事情深熟虑 非常有计划 最求高标准高要求 注重承诺还有过于敏感 过于细腻 产生距离感 多疑性 说话暗示性 高挑剔性!黄色:果断 坚定 自信 不容置疑 高标准高目标 容易成为工作狂 忽略他人感受 过于武断!绿色:乐天知命 善于倾听 缓解压力 生活过于平淡 目标感过于欠缺 过于缺乏原则性缺乏主见!成功=专业能力10%+交往能力90%http://wenku.baidu.com/view/7612f11252d380eb62946d7c.html 阅读全文

谷歌创新灵魂人物亲授创新秘诀

2013-12-23 21:44 by kingshow, 266 阅读, 0 推荐, 收藏, 编辑
摘要:最好的创新就是颠覆式创新。雷吉纳•杜坎堪称这个领域的顶级专家。她曾经领衔五角大楼的研发部门、如今是谷歌公司明星高管,主管先进技术及项目部门。她为颠覆式创新总结了5个要点。颠覆式创新的特点是:打破常规做法,激发竞争并创造全新的增长模式。雷吉纳•杜坎是这方面的世界顶尖专家之一。身为摩托罗拉移动公司(Motorola Mobility)的高级副总裁,她主管先进技术及项目部门,这是一个受“臭鼬工程”(洛克希德•马丁公司先进研究计划项目部——译注)启发成立的部门,主要致力于实现突破性创新。杜坎是去年加入摩托罗拉移动的,现在这家公司隶属于谷歌公司(Google)。此前她是国防高级研究计划署(Defens. 阅读全文