首页 Android系统framework概述

Android系统framework概述

举报
开通vip

Android系统framework概述 Android系统 framework概述 一、android是什么? 二、android的开发工作 Android的开发分为三个类型:移植开发移动设备系统;android系统级开发和应用程序 开发。 1、移植开发移动设备系统 2、Android系统级开发,指的是扩展 android的框架或者是修改 bug,这方面比较少, 除非有些开发移动设备的厂商,比如做 gps,可以往里面加入一些自己的特定系统东西,这 可能导致一些不兼容。当然也可能是简单的修复 bug,详细的内容后面还有说。 3、开发应用程序,这应该...

Android系统framework概述
Android系统 framework概述 一、android是什么? 二、android的开发工作 Android的开发分为三个类型:移植开发移动设备系统;android系统级开发和应用程序 开发。 1、移植开发移动设备系统 2、Android系统级开发,指的是扩展 android的框架或者是修改 bug,这方面比较少, 除非有些开发移动设备的厂商,比如做 gps,可以往里面加入一些自己的特定系统东西,这 可能导致一些不兼容。当然也可能是简单的修复 bug,详细的内容后面还有说。 3、开发应用程序,这应该是比较主流的开发,也就是给 android系统写应用程序。当然 我们这里主要是研究 android的 framework如何给这些应用程序提供服务的。 总结一下,我们可以把 android分为四个层次,从底层往上依次为:linux内核、C/C++ 库、java框架和 java应用程序。移植开发移动设备涉及到 linux内核(包括其驱动);android 系统级开发涉及到 C/C++库的开发及给上层 java框架;android应用程序开发就是调用 java 的框架写应用程序。 简单的从上到下,android应用程序需要有 java框架支持,比如它要发送短信,就需要 java 框架,java框架其实就是将 C/C++库包装成为了一个 JNI,而实现具体的功能是 C/C++库 , 最后驱动硬件完成功能,这也就是 linux内核部分。 三、开发工作入门 根据上面所述,android开发就分为居于 sdk开发和源代码开发。 1、SDK开发,主要是应用程序开发,这里不做详细 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 。 2、源代码的开发,涉及到的知识有 linux操作系统基础知识、android 底层库等知识, 后面将更加详细的介绍。 四、android系统级开发概述 所谓 framework,也就是系统级开发,这将是本文的重点,虽然 android的 framework 开发比较少,但是对其了解后更有利于整体开发的进行,当然很多设备厂商还是非常需要这 些的。 1、android系统架构 Linux内核及驱动、C/C++框架、java框架、java应用程序。 1)、 Linux内核及驱动 其中 linux内核及驱动是内核层的(本人对 linux内核也有过痴迷的时候,就像现 在 android痴迷一样),系统总是需要操作系统的支持的,比如内存管理、进程管理、网 络 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 栈等。 2)、android的 C/C++框架 系统 C库:用的是 libc,没什么好说的,C程序员都知道。 多媒体库 SurFace Manager:显示子系统的管理器 LibWebCore:web浏览器引擎,支持 android浏览器 SGL:skia图形库,底层的 2D图形引擎 3D库:OpenGL FreeType:字体显示 Android 的运行环境,这个也应该属于这个框架里面的,android 的虚拟机叫做 Dalvik,运行环境就是由这个虚拟机和基础的 java类库组成。 3)、android应用框架 提供一系列的服务和系统,包括视图、内容提供器、资源管理器、通知管理器、活 动管理器。 视图非常丰富:list、grid、text box、button等。 内容提供器是使得应用程序可以访问另一个程序的数据。 资源管理器是提供访问非代码的资源访问,如布局文件。 通知管理器,使得程序可以在状态栏中显示自定义的提示信息。 活动管理器,用来管理程序生命周期。 4)、android应用程序 Android所有的应用程序都是用 java写的,当然现在好像也支持一些脚本语言,如 ruby,但是不支持 C开发,所谓支持 C开发是指 jni的形式。 五、android源码获取及编译 通过上面的讲解,相信大家对 android的 framework有了大致了解,绝对是大致, 否则后面的内容拿来做什么? :) 1、源码获取 建议比较新的系统,我使用的是 fc12,当然可能缺点东西,到时候缺啥补啥吧。 A、安装 repo $ cd ~ $ mkdir bin $ echo $PATH 确保 PATH中有 bin这个目录,如果没有?PATH=~/bin:$PATH $ curl http://android.git.kernel.org/repo >~/bin/repo $ chmod a+x ~/bin/repo B、初始化 repo客户端 1、建一个目录用于放代码文件 $ mkdir mydroid $ cd mydroid 2、 $ repo init -u git://android.git.kernel.org/platform/manifest.git C、获取文件 $ repo sync 2、编译代码 $ cd ~/mydroid $ make 如果编译失败,一般都是缺了什么库之类的,yum一把。 我编译的时候出现了一个现象是: make: *** No rule to make target `development/data/etc/apns-conf_sdk.xml', needed by `out/target/product/generic/system/etc/apns-conf.xml'. Stop 每次都是错误,最后我把 developement给删除了,重新 git了: git clone git://android.git.kernel.org/platform/development 编译结果,所有的输出都在 out目录下。 Out下有 host 和 target目录,注意我们这里只是编译了 framework,而 kernel 部分没有,而且你也可以看到你 git下了的部分也没有 kernel这个文件夹,这是需 要你自己独立 git下来的。 我们这里可以使用默认使用内核镜像, Prebuilt/android-arm/kernel/kernel-qemu 模拟器运行前配置环境变量: Declare -x ANDROID_PRODUCT_OU="out/target/product/generic" ./out/host/linux-x86/bin/emulator -shell 等着吧,跑起来了 总结 这是我的读 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf 笔记,到这里我们的概述也告一段落了,后续我们将继续按照 android的 framework从下往上写一些东西,但愿我有时间。 深南大盗(573832399) 2010白色情人节
本文档为【Android系统framework概述】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_055695
暂无简介~
格式:pdf
大小:138KB
软件:PDF阅读器
页数:3
分类:互联网
上传时间:2011-11-28
浏览量:18