




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章Android基础1.1
Android的前景1.2
Android操作系统的架构1.3
Android开源知识1.4
Android学习资源
1.1Android的前景
Android各个版本名称及其发布时间如表1.1所示。据相关数据统计显示:目前热招的Android技术相关岗位约有3882个,而一个月内的有效岗位量为2298个,主要的热招职位包括:Android软件工程师、Android应用开发工程师、Android操作系统驱动工程师、Android手机游戏开发人员、Android操作系统软件开发人员、Android游戏应用版本管理人员、人机交互分析工程师、Android中间层开发工程师等。
1.2Android操作系统的架构
Android操作系统可分为应用层(Applications)、应用框架层(ApplicationFramework)、系统运行库层(Libraries)和Linux内核层(LinuxKernel)四层,如图1.1所示。图1.1Android系统架构图
1.应用层
应用层是采用Java语言编写的运行在虚拟机上的程序。应用层主要是一些面向用户的图形化界面的应用程序,这些应用程序中还包含一些和它们相关的资源文件。应用程序的
主程序和相关的资源文件经过编译后会生成一个后缀为apk的包。
2.应用框架层
从图1.1中可以看出,Android操作系统在应用框架层提供了一些组件,这些组件的名称和功能如表1.2所示。
3.系统运行库层
系统运行库可以是C/C++库或Android运行库。当使用Android应用框架时,Android操作系统会通过一些C/C++库来支持所使用的各个组件,这些库的名称及其功能如表1.3所示。
4.Linux内核层
目前,Android内核的最新开发版本是2.6.31,它是一个增强型的内核版本,除了修改部分Bug外,还提供了用于支持Android平台的设备驱动和系统功能,其核心驱动和功能如表1.4所示。
(1)使用Git工具下载Android内核goldfish分支源码:
mkdir~/kernel
cd~/kernel
gitclone/kernel/goldfish.git
(2)默认情况下,源代码下载完成后是隐藏的,可以使用“ls-a”或者“la”命令查看;使用“gitbranch-a”命令可以查看该分支包含的版本信息。这里我们提取出“android-goldfish-2.6.39”的内核版本,输入如下命令:
gitcheckout-bandroid-goldfish-2.6.39origin/android-goldfish.2.6.39
(3)此时使用“ls”命令即可查看Android内核目录,如图1.2所示。图1.2内核目录
Android是基于Linux内核的操作系统,所以对于一个新的设备,需要先编译一个支持Android的Kernel,即除了需要移植前面提到的驱动之外,还需配置Kernel来支持Android平台,这里可以参考Goldfish(模拟器CPU)的内核配置文件,首先输入“cparch/arm/configs/goldfish_defconfig
.config”将内核配置文件复制到内核根目录下并修改文件名为“.config”,然后输入“makemenuconfig”显示内核配置界面,如图1.3所示。图1.3内核配置界面以编译模拟器的内核为例,操作过程如下:
(1)修改内核根目录下的Makefile文件,修改“CROSS_COMPILE”的值为“arm-eabi-”,修改“LDFLAGS_BUILD_ID”的值为空。
(2)使用如下命令设置交叉编译工具的路径(如果没有交叉编译工具包,则使用“gitclonehttps://android.google-
/platform/prebuilt”命令下载):
exportPATH=$PATH:交叉编译工具的路径
(3)设置环境变量:
exportARCH=arm
exportSUBARCH=arm
exportCROSS_COMPILE=arm-eabi-
(4)编译内核:
make-jX
其中X表示处理器的线程数,用来加快编译速度。
编译完成后会在arch/arm/boot/文件夹里面生成zImage文件,这就是编译生成的内核镜像文件,如图1.4所示。图1.4编译生成zImage文件
1.3Android开源知识
Google公司提供的Android手机开发平台包含了原始Android的目标机代码、主机编译工具和仿真环境,系统源码下载完成之后,第一级别的目录和文件如图1.5所示,其中的各个目录和文件的功能如表1.5所示。图1.5Android系统源码第一级别的目录和文件
Android代码的工程分为以下三个部分:
(1)核心工程(CoreProject)。
(2)扩展工程(ExternalProject)。
(3)包(Package)。
1.4Android学习资源
由于Android技术的快速发展,本书无法涵盖所有内容,所以除了参考本书和AndroidSDK文档外,还可以参考以下资源:
(1) Androideoe开发者门户:。
(2) AndroidGoogleGroupsAndroid官方援助社区:/group/android-developers。
(3) Android教程和编程论坛:。(4) Android官方网站:/。
(5) OpenHandsetAlliance:/。
(6) GoogleAndroid开发者博客:/。
(7) Android开发者大赛网站:/android/adc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纺织品染整工艺流程设计考核试卷
- 绳索结构设计原理与案例分析考核试卷
- 增材制造装备在光学元件加工的技术考核试卷
- 牛的饲养饲料浪费减少方法考核试卷
- 宠物友好度假活动策划考核试卷
- 稀土金属加工中的生产计划编制与执行考核试卷
- 商丘职业技术学院《C语言程序设计基础》2023-2024学年第二学期期末试卷
- 山东经贸职业学院《形势与政策2》2023-2024学年第一学期期末试卷
- 山西电力职业技术学院《机能学实验(二)》2023-2024学年第二学期期末试卷
- 内江职业技术学院《冶金电化学》2023-2024学年第二学期期末试卷
- 注射相关感染预防与控制(全文)
- 古诗阅读赏析泊船瓜洲
- 熔断器安装施工方案
- AQ 1044-2007 矿井密闭防灭火技术规范(正式版)
- 中深层无干扰地热供热系统应用技术规程
- 六年级下册美术教学设计-第3课《记录色彩》人教新课标
- 2024年全国青少年航天创新大赛航天知识竞赛试题
- 国开(山西)2024年《使用法律基础》形考作业1-4答案
- 2024年郑州铁路职业技术学院单招职业适应性测试题库附答案
- DZ∕T 0204-2022 矿产地质勘查规范 稀土(正式版)
- ~保安劳动劳务合同书范本
评论
0/150
提交评论