Android系统级深入开发——移植与调试
前 言
Android系统是目前最为流行的手机系统之一,本书作者在推出了全面介绍Android系统的《Android系统原理及开发要点详解》一书,同时出版了繁体版,并将版权成功输出到韩国,韩文版将在2011年7月出版。在本书出版之后,笔者切实感到越来越多的开发人员和企业在关注Android系统的各个方面。
Android系统是开源的,它的一个比较大的优势就是可以移植到各个不同的硬件平台上。“移植”是Android系统的精华所在,也是Android开发中的难点兼重点。
本书《Android系统级深入开发——移植与调试》出版的主要目的是分享开发经验,帮助众多开发者快速地掌握Android系统在不同硬件平台移植的方法。帮助工程师以最快的速度、最小的开销、最轻的工作量,让Android系统高效地运行在更多的硬件上。
本书特点
本书紧紧抓住了Android系统移植与调试的主题,从开发者的角度出发,其特点主要包括以下几个方面:
本书使用的代码以Android的开源工程为主,硬件也是比较常见的设备,保证读者可以很容易地获得开发环境。
根据Android系统自身的固有特点,从Linux内核中的驱动和硬件抽象层两个着手点作为切入点。
按照Linux的开发思路,从驱动程序的角度出发,让具有Linux开发经验的工程师,可以更快地熟悉主要用于移动设备开发的Android系统。
从模拟器、高通的MSM平台、德州仪器的OMAP平台这三种硬件平台出发,全面介绍,不以偏概全,既把握共同点,也突出差异。
对于Android中规模和难度各不相同的子系统,抓住它们和硬件相关的共同点,采取同样的格式和思路进行介绍,体现了“从特殊到一般”的理念。
简要介绍各个子系统的框架,并列出代码路径,对移植部分的主要调用部分加强提示,让读者更全面地把握系统。
本书内容
本书分成24章,各章的内容如下所示:
第1章和第2章:概要部分 |
介绍Android的系统的大结构、移植的主要工作,开发环境的构建方法 |
第3章:全书的总纲 |
全面介绍Linux系统的驱动程序,突出介绍Android中硬件抽象层的不同实现方式,展示Android移植的各个方面 |
续表
第4章至第6章:Linux内核方面 |
主要介绍用于模拟器的Goldfish、MSM的mahimahip平台和OMAP的Zoom平台的3种Linux内核,介绍了不同体系结构的移植,与硬件无关的Android专用驱动,并简单介绍了各个硬件设备的驱动程序 |
第7章和第8章:基本GUI的系统 |
包括显示输出和用户输入两个部分,是每个系统最优先移植的部分 |
第9章:传感器系统 |
体现Android系统最经典的移植方式 |
第10章至第12章:多媒体的输入输出环节 |
是Android移植重点关注的部分 |
第13章至第15章:连接系统 |
介绍连接方面的无线局域网、蓝牙和定位三个子系统,前两者使用Linux中比较标准的方式,定位主要通过GPS进行介绍 |
第16章:电话系统 |
介绍电话系统,这也是用于移动设备的核心部分 |
第17章:OpenGL |
作为显示加速的OpenGL 3D的移植,体现Android和业界标准规范的接轨 |
第18章和第19章:多媒体 |
用于多媒体加速的编解码单元的移植,第18章介绍编结码较下层的标准模块OpenMax插件,第19章介绍OpenMax插件在Android系统中的使用 |
第20章:位块复制 |
介绍位块复制部分,主要用于原始图像数据处理的加速 |
第21章至第24章:几个小系统 |
介绍与移动电话相关的警报器、光、振动器、电池信息这4个Android中较小系统的移植 |
本书读者
本书适合不同类型的读者群,不同类型的读者在学习的时候需要使用不同的方法。作者的建议如下:
对于熟悉Linux内核但不熟悉Android的开发者,应该以驱动程序作为切入点,通过硬件抽象层的实现,将Linux的各个驱动程序应用到Android系统中。
对于熟悉Android系统但不熟悉Linux内核的开发者,向下了解Linux内核,这样既可以更深入地了解Android系统的运作方式,又可以拓展自己的技术领域。
对于经验较多,希望深入研究Android系统的开发者,应该更关注开发的细节,了解移植中调试的要点。
本书作者
本书的规划和统筹由中国大陆的韩超完成,韩超常年工作在Linux和Android的开发一线,兼具产品和理论经验。本书内容来源于工作在不同领域Android和Linux开发者多年的经验。韩超和梁泉完成了本书内容的主要部分,众多不同规模的企业开发成果也为本书的编写提供了重要的素材。参与本书编写的还有崔海斌、于仕林、张宇、张超、赵家维、黄亮、沈桢、徐威特、杨钰、马若劼、曹道刚等。广大社区开发者也对本书的成稿作出了贡献。
Android系统级深入开发——移植与调试
韩超 梁泉 著
ISBN 978-7-121-12609-3
2011年2月出版
定价:55.00元
16开
384 页
宣传语
从Android开源工程到产品的开发宝典
全面介绍Android中与硬件相关的子系统
按照驱动程序和硬件抽象层两方面把握移植要点
高效粘合Linux系统经验和移动设备应用场景
以三种硬件平台为参考,参考开发环境宜于获得
作者简介
韩 超,中国大陆资深Linux和移动开发工程师,长期从事一线开发工作,兼具开发实践经验和完备的教育思维模式。韩超是中国大陆较早开发Android系统开发的人员,曾从事系统框架、芯片移植适配和移动产品等开发领域;也曾经引领各种技术人员进入Android领域,并组织参与技术交流。
内容简介
本书是一本全面介绍Android系统级开发的作品,全书以移植和调试为重点。Android具有一个庞大的软件系统,任何开发者都难以掌握系统的每一个细节。因此,如何高效地理解和开发系统,就成了Android系统级别工程师面对的主要问题。本书作者以实际的开发经验为基础,以软件工程思想为指导,完成了本书。本书介绍了从Android开源工程到一个基于实际硬件产品中的主要工作,一方面让读者清晰把握各个子系统的架构,另一方面让读者把握移植这个开发核心环节的要点。
本书适合Linux开发人员、移动设备开发人员、Android系统框架层和底层开发人员、有意图深入学习Android的人员、以及从事手机研发的读者阅读
Android系统级深入开发——移植与调试相关推荐
- Android系统级开发进程清理功能的一些记录和发现(一)
Android系统级开发清理功能的一些记录和发现 客户需求做一键清理所有后台进程的功能,在查阅网上相关博客以及自己研究以后找到以下几种方法: killBackgroundProcesses() 这种方 ...
- Android系统级开发进程清理功能的一些记录和发现
Android系统级开发清理功能的一些记录和发现 客户需求做一键清理所有后台进程的功能,在查阅网上相关博客以及自己研究以后找到以下几种方法: killBackgroundProcesses() 这种方 ...
- 高通MSM8255 GPS 调试分析Android系统之Broadcom GPS 移植
http://blog.csdn.net/dwyane_zhang/article/details/6775738 没事做整理一下GPS的流程,也算给自己一个交代. 1.硬件抽象层: 高通MSM的硬件 ...
- Android系统的应用开发与运行环境构建
当我们选择基于Android系统的移动应用开发,如何构架其应用开发与运行环境呢?本文围绕这问题展开了细致的讲解.首先让我们一起想想如下问题. P1:构建环境准备工作是什么? P2:软件安装的顺序是什么 ...
- android实现全局悬浮窗,android 系统级的悬浮窗实现
android系统级悬浮球的实现流程 当我们在使用的app的时候,如果需要实时观测到某个功能的实时进度并且不影响其他的操作的时候或者不影响使用其他应用的时候,系统级的悬浮球是个非常不错的选择. 首先我 ...
- Android 系统应用Setting开发总结
版本:2.0 日期:2014.3.18 版权:© 2013,2014 kince 转载注明出处 更新: 2014.3.20:1.修正导入jar包问题 2. 更新运行不了解决办法 最近由于工作关系需要对 ...
- android系统硬件OpenGL 3D移植(二)
通过前面两篇文章: http://blog.csdn.net/andyhuabing/article/details/7176049 http://blog.csdn.net/andyhuabing ...
- Android系统Google Maps开发实例浅析
Google Map(谷歌地图)是Google公司提供的电子地图服务.包括了三种视图:矢量地图.卫星图片.地形地图.对于Android系统来说,可以利用Google提供的地图服务来开发自己的一些应用. ...
- Android系统的指纹开发
随着互联网和物联网应用的普及,现在已经有越来越多的智能设备集成了指纹识别模块,在众多的智能设备中,设备的操作系统也日趋多元化,如Windows.Android.Linux平台.MacOS平台.嵌入式平 ...
- android系统二次开发,Andorid系统二次开发界面
Andorid系统二次开发界面 给大家介绍完外观,下面我们一起再来看下魅族MX的系统界面.本次魅族MX仍然采用的是Andorid操作系统,并且加入了二次开发界面.UI界面整体上保持了和M9的特色,不过 ...
最新文章
- 电大计算机基础知识试题是什么样的,计算机应用基础知识(电大试题)
- 浅析网站友情链接交换潜在问题有哪些?
- 如何区分引用类型和原始类型
- Linux下查看TOMCAT控制台
- TortoiseGIT创建及合并分支
- 【UML关系(泛化、实现、依赖、关联(聚合,组合))】
- python中lower()函数的用法
- CentOS下安装svn,添加新用户,重启svn服务
- ibatis 核心原理解析
- 【ZZ】ubuntu9.10桌面版使用(一)基础安装配置
- python爬取别人qq空间相册_Python_小林的爬取QQ空间相册图片链接程序
- 提取Wallpaper engineer里面scene.pkg文件的内容
- 小波 奇异点 matlab,Matlab小波变换对于奇异点的检测.doc
- win7蓝屏0x000000f4修复_Win 7电脑突发蓝屏现象,应如何解决或避免
- 江民科技董事长王江民因病在北京逝世 享年59岁
- 聊下Android的专利许可和商标
- 功放限幅保护_为什么要对放大器限幅?
- HDU:1998 奇数阶魔方(规律填数)
- 深度学习--基于队列的数据随机载入
- Linux Mint 15使用问题记录
热门文章
- Openresty 与 Tengine
- 浅谈算法和数据结构: 一 栈和队列
- 使用Global.asax实现ASP.Net的URL重写
- win10下安装Cygwin配置gcc编译环境
- Maven修改默认JDK
- (转)通过 Javacore 诊断线程挂起等性能问题
- Ubantu16.04LTS麒麟版:取消登录界面的客人回话
- Win7 + VS2015 + CMake3.6.1-GUI + Makefile 编译开源库
- C# 之 Stream 和 byte[] 的相关转换
- nil,NULL,NSNull的区别