Android技术19:Android系统架构

Android系统架构是学习Android最基本的知识点,经常在技术面试过程中涉及到有关问题,接下来对Android系统架构进行总结。

Android官方文档提供资料显示:Android系统分为4个层次,从低到高依次为Linux kernel(Linux内核层),Libraries和Android运行时Runtime,Android Framework,Applications。

1.Applications应用层

该层主要是运行在Andorid系统上的应用程序,如Home,SMS,Contacts等,一般这些应用程序都是用Java语言编写,通过Android Framework层提供的API。也可以通过JNI方式,配合Android NDK开发原生态应用程序,这样可以提高程序运行效率,也可以提高应用程序安全性,增加反编译的难度,一般涉及核心业务逻辑部分需要NDK支持。

2.Android Framework层

该层主要为应用层提高各种服务,提供API框架,它的实现主要通过JNI技术调用底层Native Service。该层分为以下几个模块:

活动管理器Activity Manager:主要用于管理应用程序生命周期,例如开启应用程序需要资源,关闭应用程序释放资源

窗口管理器Window Manager:管理所有开启的窗口

包管理器Package Manager:主要管理安装的在Android操作系统上的所有应用程序,查看信息卸载应用程序

资源管理器Resouces Manager:管理应用程序需要的各种资源文件

通知管理器Notification Manager:在通知栏显示自定义通知信息

内容提供器Content Providers:应用程序间数据共享

视图系统View System:提供各种视图 按钮,文本框,列表等

硬件服务Hardware Service :Telphony Manager,Bluetooth Manager,Wifi Manager ,Location Manager等

3.Libraries 和Runtime

核心库

Surface Manager:对显示子系统进行管理,并且提供多个应用程序提供2D,3D图层的无缝融合

SQLite:轻型关系数据库引擎

WebKit:Android浏览器内核引起

FreeType:位图和矢量字体

Media Framework:基于PacketVideo OpenCORE,支持多种视频音频和图片

OpenGL/ES:支持OpenGL/ES1.X OpenGL/ES2.0

SSL:安全通信技术处理

Libc:Google自己开发的C语言库,继承Linux系统库

Android运用时

包括核心库和Dalvik虚拟机

4.Linux内核层

Android 是基于Linux 2.6版本提供核心服务,例如安全,线程管理,内存管理,网络栈,驱动模块

Display Driver ,Bluetooth Driver,Camera Driver ,Binder Driver,Power Manager,Memory Manager,Wifi Manager等

Android技术19:Android系统架构,布布扣,bubuko.com

时间: 2024-10-25 05:56:31

Android技术19:Android系统架构的相关文章

本书已出版<拨云见日:基于android的内核与系统架构源代码分析 >

已陆续倒到各大电商站点及新华书店 http://item.jd.com/11594135.html http://product.china-pub.com/4472138 http://www.amazon.cn/%E6%8B%A8%E4%BA%91%E8%A7%81%E6%97%A5-%E5%9F%BA%E4%BA%8Eandroid%E7%9A%84%E5%86%85%E6%A0%B8%E4%B8%8E%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84%E6%BA%9

本书已出版<拨云见日:基于android的内核与系统架构源码分析 >

已陆续倒到各大电商网站及新华书店 http://item.jd.com/11594135.html http://www.amazon.cn/%E6%8B%A8%E4%BA%91%E8%A7%81%E6%97%A5-%E5%9F%BA%E4%BA%8Eandroid%E7%9A%84%E5%86%85%E6%A0%B8%E4%B8%8E%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90-%E7%8E%8

.Net程序员玩转Android开发---(19)Android IntentService服务

Intentservice服务也是安卓中的一个服务,它继承与service,但与servcie有所不同,它新开启一个线程来处理所有的请求, 不需要再UI等待处理,onStartCommand方法把所有请求发送到工作队列中,,然后再由工作队列发送到onHandlerIntent中进行处理 1.interservice默认情况下是新开启一个线程来处理任务, service默认是在ui线程执行 2. interservice会创建一个工作队列来处理接受到任务,只用当前任务处理完成,才能处理下一个任务,

Android技术——在Android中的随意视图中找控件

1.在非常多情况下,我们可能不知道控件的id,可是我们却希望在包括这个控件的视图中找到它,能够採用例如以下做法: 例:在Activity的根视图中找出当中全部的Button控件 private void findButton(ViewGroup group, List<Button> result) { if (group != null) { for (int i = 0, j = group.getChildCount(); i < j; i++) { View child = gr

系统架构师-基础到企业应用架构-系列索引

系统架构师-基础到企业应用架构-索引 系统架构师-基础到企业应用架构系列会从,系统架构的起源.发展.架构师必备的基础知识与技能.如何把架构应用到企业应用中去.整个系列计划30篇左右,每 一篇都是自己在系统架构过程中的总结和经验,每一篇我都会抱着认真的态度去完成,宁缺毋滥的原则.希望本系列看完之后不但能够帮助看过这个系列的人对系统架 构有深刻的认识,并且能够掌握系统架构中的必备知识,应用到自己的工作中去,更可以共同提高大家的个人能力.本系列希望能够抛砖引玉,希望大家能够多提出宝 贵意见. 前篇 1

系统架构师-基础到企业应用架构-服务层

一.上章回顾 上篇我们主要讲解了系统架构中的四种架构模式,并且分析了四种架构模式的实现及应用场景,那么先来回顾下架构中的业务逻辑层的使用及总结.  如果大家对图中讲述的内容不明白或者说是不深入那么可以参考上篇讲 解的内容:系统架构师-基础到企业应用架构-业务逻辑层. 二.摘要 本文将已架构的方式去分析分层结构中的服务层的设计,如何设计出来满足我们说的业务需求及设计规范的服务层将是我们的目标,可能我想大家在项目架构的 过程中可能有些同仁,没有用到该层,或者说是采用的是常用的分层结构的设计,而没有把

系统架构师-基础到企业应用架构-数据访问层

一.上章回顾 上篇我们简单讲述了服务层架构模式中的几种,并且讲解了服务层的作用及相关的设计规范,其实我们应该知道,在业务逻辑层中使用领域模型中使用服务层才 能发挥出最大的优势,如果说我们在业务逻辑层还是使用非领域模型的模式话,服务层的作用仅体现在解耦作用.其实在业务逻辑层采用领域模型时,我们前面说的持 久化透明的技术,其实我们可以通过服务层来做,我们在服务层中处理领域对象信息的持久化操作.当然本篇可能不会深入讨论持久化透明的具体实现,后面会单独开 篇来讲述,我们先来回顾下上篇讲解的内容:  上图

系统架构师-基础到企业应用架构-业务逻辑层

一.上章回顾 上章我们主要讲述了系统设计规范与原则中的具体原则与规范及如何实现满足规范的设计,我们也讲述了通过分离功能点的方式来实现,而在软件开发过程中的具 体实现方式简单的分为面向过程与面向对象的开发方式,而目前更多的是面向对象的开发设计方式.并且我们也讲述了该如何通过设计手段去分析功能点及设计分离 点,应该如何在设计的过程中分析的角度及如何去满足设计规范与原则.首先我们通过下图来回顾下上章要点: 二.摘要 本文将已架构的方式去分析分层结构中的业务层的设计,如何写出来内聚度,高耦合的业务逻辑层

系统架构师-基础到企业应用架构-系统设计规范与原则[上篇]1

一.上章回顾 在上篇中我们讲解了几类UML2.0语言新推出的建模图形,总体来说通过这些图形能更详细的将某类信息表达出来.在这里我们简单回顾上篇讲解的内容. 上图中已经简单介绍了上章讲述的内容,具体内容请看:系统架构师-基础到企业应用架构-系统建模[下篇]. 二.摘要 本章将主要的简单介绍在系统架构中的设计模式及相应规范准则.并结合相应的代码来说明如何遵循系统架构中的一些基本的设计规范及准则.而我们将在本文介 绍几类常用的设计规范,我们先来看看结构化设计的二个基本原则: 当然既然提出了基本的准则,