《深入理解Android:Telephon原理剖析与最佳实践》学习笔记(系统框架)
来源:互联网 发布:fc2视频域名 编辑:程序博客网 时间:2024/06/13 16:05
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原理剖析与最佳实践》学习笔记(系统框架)
- 深入理解Android:Telephony原理剖析与最佳实践 即将发布
- 深入理解软件构造系统:原理与最佳实践
- 深入理解软件构建系统原理与最佳实践阅读笔记
- [连载] 深入理解Java虚拟机(JVM高级特性与最佳实践) 学习笔记连载分享
- 深入理解Android网络编程:技术详解与最佳实践
- 《深入java虚拟机--JVM高级特性与最佳实践》学习笔记(三) GC原理与垃圾收集器
- 深入理解JAVA7核心技术与最佳实践
- 《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——程序编译与代码优化(一)
- 《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——自动内存管理机制
- 《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——Java类文件结构
- 《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——虚拟机类加载机制
- 《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——晚期(运行期)优化
- Koa框架实践与中间件原理剖析
- Koa框架实践与中间件原理剖析
- 《深入解析Android:Telephony原理剖析及最佳实践》一书即将发行,欢迎各位Android开发、爱好者订阅
- 从零开始--系统深入学习android(实践-让我们开始写代码-Android框架学习-7.通知)
- 从零开始--系统深入学习android(实践-让我们开始写代码-Android框架学习-6.对话框)
- 消息槽
- 阿斯科利肌肤光滑了深刻的刚回来
- JAVA JDK 1.5 循环获取HashMap value
- PowerDesigner使用教程
- selinux策略源码安装
- 《深入理解Android:Telephon原理剖析与最佳实践》学习笔记(系统框架)
- Neodynamic Barcode Professional for ASP.NET是最灵活和强大的.NET组件
- 亚马逊流媒体音乐服务Prime Music反响不错
- fork()调用的一个趣题--fork函数能生成几个子进程???
- NOJ1074南二的公告牌——线段树+单点更新
- assert()函数用法总结
- 2014-6-24任务完成情况
- 黑马程序员_ArrayList_HashSet及Hashcode的分析
- 事件引擎