ANDROID培训-MTK安卓平台介绍剖析.pptxVIP

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ANDROID培训-MTK安卓平台介绍剖析

MTK安卓平台介绍 编译及工作环境 android5.0以下: unbuntu 10.04 Gcc4.4.3 JDK1.6 android5.0以后: unbuntu 12.04 Gcc4.6 JDK1.7 编译及工作环境 代码管理:GIT 开发工具:Wine 、sourceinsight、beyond 虚拟机:virtualbox-4.3 (unbuntu 10.04 安装virtualbox-4.04) 编译及工作环境 系统要求: 针对ANDROID5.0以下项目: 推荐:4核8线程CPU、=8G内存 ANDROID5.0及以上项目: 推荐:8核16线程CPU、=16G内存、固态硬盘 ANDROID系统架构 android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,ANDROID分为四个层,从高层到低层分别是: 应用程序层 应用程序框架层 系统运行库层 linux核心层 ANDROID系统架构 ANDROID系统架构 主要目录: packages/apps mediatek/packages/apps 主要系统APK:Settings、Launcher2、Gallery2、Dialer、Contacts 应用程序层 ANDROID系统架构 目录: frameworks/base Core: 安卓SDK中的API接口及系统核心的资源包(字串,数组、动画、颜色等) Data: 开关机动画、字体、铃声、键盘映射等 Packages:主要是SystemUI状态栏相关APK 框架层 ANDROID系统架构 policy :锁屏、系统窗口相关、事件预分发、电源键处理等 Packages:主要是SystemUI状态栏相关APK services :系统中各种关键服务如: WindowManagerService、PowerManagerService、PackageManagerService、BatteryService、MountService、InputManagerService、InputMethodManagerService、ActivityManagerService、BluetoothManagerService 框架层 ANDROID系统架构 主要包括dalvik、art虚拟机、和 一些开源的代码库等 androidruntime: frameworks/base/cmds/app_process 系统运行库层 ANDROID系统架构 需要关注的目录: Kernel、 mediatek/custom/common/kernel、 mediatek/custom/leatek72_cwet_kk/kernel、 mediatek/custom/mt6572/kernel 部分模块: Hardware/libhardware Linux核心层 ANDROID系统架构 各个驱动模块的编写如:bt803、qn806、cust_tpd、LCM MTK平台DCT工具:按键、中断、GPIO等配置,见下页 Linux核心层 ANDROID系统架构 Linux核心层 ANDROID启动流程 ANDROID启动流程 Preloader- LK: 启动检查是否为下载模式,如果不为下载模式,进入LK中对部分关键硬件初始化:时钟、中断、定时器、串口,以及显示屏、FASTBOOT命令等。 LK初始化完成后跳到kernel。并向kernel传送一个启动命令字符串 ANDROID启动流程 Kernel:对所有硬件设备初始化,初始化完成后执行init进程。 读取根文件系统中init.rc等文件。执行里面的命令 init.rc:初始化环境变量、挂载文件系统、启动一些基本服务如adb、播放开机动画、 ueventd服务、 servicemanager、netd、Vold等。之后启动zygote服务 ANDROID启动流程 zygote : service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server class main socket zygote stream 660 root system 根据传入的参数启动app_process。具体流程如下: ANDROID启动流程 app_main.cpp : 新建类AndroidRuntime实例:runtime,该类中可新建一个虚拟机,并注册虚拟机API调用接口 参数:--zygote --start-system-server: runtime.start(com.android.internal.os.ZygoteInit,

文档评论(0)

jiayou10 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档