《深入理解Android:Telephon原理剖析与最佳实践》学习笔记(系统框架)
Android智能手机的系统结构:
智能手机的硬件基本结构大多采用双处理器架构:主处理器和从处理器,主处理器主要运行开放式操作系统以及操作系统之上的应用,负责整个系统的控制,称之为AP,从处理器负责基本无线通信,完成语音信号和数字语音信号调制解调/信道编码解码和无限Modem控制。
Android应用框架层主要的组件介绍:
View(视图):在AndroidSDK中介绍了丰富的Views使用方法及相关属性,所有的Android应用程序有这写Views构成,主要包括了列表(Lists),网格(Grids),文本框(Text),按钮(Buttons)等基础Android应用的界面控件。
Resource Manager(资源管理器):提供非代码资源转换和访问,如本地字符串(XML文件配置),图片和布局文件(Layout Files,使用XML文件配置)。
Notification manager(通知管理器):应用可以在状态栏中现实自定义的提示信息,如新短信通知,未接来电通知,手机信号量通知。
Activity Manager(Activity管理器):用来管理Android应用程序界面的生命周期(onCreate创建,onResume显示,onPause暂停,onStop停止等),一个手机屏幕界面可对应一个Activity。
Dalvik虚拟机运行环境:
DEX格式是专为Dalvik设计的一种压缩格式,适用于内存和处理器速度有限的系统:要生成DEX格式文件,首先要通过Java编译生成class文件,然后通过Android提供的dx工具将class文件格式转换成DEX格式。
Dalvik虚拟机的特性总结:
每个Android应用运行在一个Dalvik虚拟机实例中,而每一个虚拟机实例都是一个独立的进程空间。
虚拟机的线程机制,内存分配和管理,Mutex(进程同步)等的实现都依赖底层Linux操作系统。
所有Android应用的线程都对应一个Linux线程,因而虚拟机可以更多地使用Linux操作系统的线程调度和管理机制。
整体编译源代码:
源代码现在完成后,使用终端在项目跟目录下使用make命令进行编译,如果计算机处理能力比较强可使用make -j8增加编译工作进程数从而减少编译时间。
编译生成的system目录中,主要结构:
app(应用apk文件)
bin(可执行文件)
etc(系统配置文件)
fonts(字体文件)
framework(主要保存一些jar包)
lib(主要保存一些so动态链接库文件)
usr(用户配置信息)
xbin(系统的一些可执行文件)
《深入理解Android:Telephon原理剖析与最佳实践》学习笔记(系统框架)的更多相关文章
- 《AngularJS深度剖析与最佳实践》笔记: 第二章 概念介绍
第二章 概念介绍 2.1 什么是UI? 用户界面包括内容(静态信息+动态信息), 外观, 交互. 在前端技术栈中分别由HTML, CSS和JS负责. 进一步抽象, 分别对应于MVC三个主要部分: Mo ...
- 《深入理解OSGi:Equinox原理、应用与最佳实践》笔记_1_运行最简单的bundlehelloworld
<深入理解OSGi:Equinox原理.应用与最佳实践>笔记_1_运行最简单的bundlehelloworld 买了周大大的OSGI的书看 先前完全没有基础 就靠这本书看看学学 顺便记一些 ...
- 《AngularJS深度剖析与最佳实践》简介
由于年末将至,前阵子一直忙于工作的事务,不得已暂停了微信订阅号的更新,我将会在后续的时间里尽快的继续为大家推送更多的博文.毕竟一个人的力量微薄,精力有限,希望大家能理解,仍然能一如既往的关注和支持sh ...
- KiCad EDA 原理图库的最佳实践
KiCad EDA 原理图库的最佳实践 由于有 Alias 别名元件,可以不用一个每一个元件都有一个元件. 对每种元件类型建议一个元件库. 因为 Value 和 元件名是一样的,所以元件名要尽可能的简 ...
- 推荐《深入浅出深度学习原理剖析与python实践》PDF+代码
<深入浅出深度学习原理剖析与Python实践>介绍了深度学习相关的原理与应用,全书共分为三大部分,第一部分主要回顾了深度学习的发展历史,以及Theano的使用:第二部分详细讲解了与深度学习 ...
- 深入浅出深度学习:原理剖析与python实践_黄安埠(著) pdf
深入浅出深度学习:原理剖析与python实践 目录: 第1 部分 概要 1 1 绪论 2 1.1 人工智能.机器学习与深度学习的关系 3 1.1.1 人工智能——机器推理 4 1.1.2 机器学习—— ...
- nodejs 实践:express 最佳实践(八) egg.js 框架的优缺点
nodejs 实践:express 最佳实践(八) egg.js 框架的优缺点 优点 所有的 web开发的点都考虑到了 agent 很有特色 文件夹规划到位 扩展能力优秀 缺点 最大的问题在于: 使用 ...
- Guava Cache 原理分析与最佳实践
前言 目前大部分互联网架构 Cache 已经成为了必可不少的一环.常用的方案有大家熟知的 NoSQL 数据库(Redis.Memcached),也有大量的进程内缓存比如 EhCache .Guava ...
- Android 6.0 权限管理最佳实践
博客: Android 6.0 运行时权限管理最佳实践 github: https://github.com/yanzhenjie/AndPermission
随机推荐
- CentOS 7.x安装配置
简述 VMware可以创建多个虚拟机,每个虚拟机上都可以安装各种类型的操作系统.安装方法也有很多种.下面,主要以ISO镜像安装为例,介绍CentOS 7.x的安装过程及相关的参数设置. 简述 创建虚拟 ...
- WPF:xmal 静动态资源
<StackPanel.Resources> <SolidColorBrush x:Key="myBrush" Color="Teal"/&g ...
- python中字符与ascii码转换
ASCII码转字符用chr()函数: 字符转ASCII码用ord()函数:
- JavaScript实现冒泡排序
思想:从第一个元素开始,对数组中两两相邻的元素比较,将值较小的元素放在前面,值较大的元素放在后面,一轮比较完毕,一个最大的数沉底成为数组中的最后一个元素,一些较小的数如同气泡一样上浮一个位置.n个数, ...
- 9. shell环境
• printenv –打印部分或所有的环境变量 • set –设置 shell 选项 • export —导出环境变量,让随后执行的程序知道. • alias –创建命令别名 1.shell环境:s ...
- Laravel
Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁.富于 ...
- Kids and Prizes(SGU 495)
495. Kids and Prizes Time limit per test: 0.25 second(s)Memory limit: 262144 kilobytes input: standa ...
- 319. Bulb Switcher——本质:迭代观察,然后找规律
There are n bulbs that are initially off. You first turn on all the bulbs. Then, you turn off every ...
- FZU 2028 时空门问题
题目链接:时空门问题 简单bfs,每个格子移动的方式除了上下左右,还有时空门,开始想着用邻接表保存每个点能通过时空门到达的点就ok了.很快的敲出来,很快的WA了.长久的dbug并没有发现error.然 ...
- POJ 1258 最小生成树
23333333333 完全是道水题.因为是偶自己读懂自己做出来的..T_T.prim的模板题水过. DESCRIPTION:John竞选的时候许诺会给村子连网.现在给你任意两个村子之间的距离.让你求 ...