Android FrameWork 底层开发

1. FrameWork 底层开发

  1. Android: 底层开发 开发核心配置
    Android FrameWork 底层开发_第1张图片
  2. 软件工程师学习与Android 底层与硬件层次的开发,主要学习Android 的OS开发使用, Android底层固化的 FrameWork层 主要查看旷考层 FrameWork C++ 底层
    3Android FrameWork 底层开发_第2张图片

Android FrameWork 底层开发_第3张图片
下载JDK 6u45 Liunx bin 版本

Andorid 源码编译:

  1. boot 和 kernel :
    lichee.tar.gz
    这个 boot 和kernel 的包
  2. Android 源代码下载有十几个G ,硬件必须预先有空间
  3. 必须要编译boot h和 内核 还要Android yuAndroid FrameWork 底层开发_第4张图片
  4. 在目录下查看到 lichee 是内核目录:
    对kernel 编译
cd lichee/   --- 进入内核目录
./build.sh   -- 运行当前目录下的此脚本
 当前测试 使用 sun6i_fiber 所以利用当前命令来编译boot 和 kernel
 ./build.sh -p sun6i)fiber)a31s -v boot_v1.0
 kernel 编译完成后在 out 目录下生成
 ls out/android

Android FrameWork 底层开发_第5张图片
3.查看Android源代码:
对Android 编译

编译android : 在Android目录下面
1. .build/envsetup.sh
2. lunch 列举出编译版本
3.  在列举出版本中选择 fiber_a31st-eng 与上面内核版本相同
4. extract-bsp : 将boot 和 kernel copy 到指定目录下面
5.  make -j16 : 笔记本3个多小时
6.  ls out/target/product/fiber-a31st 下面编译生成的库和二进制
7. pac 命令进行烧入打包 使用到包 烧入开发版本中 有630 M 左右

Android FrameWork 底层开发_第6张图片
Android FrameWork 底层开发_第7张图片
Android FrameWork 底层开发_第8张图片

Android 开发目录

Frameworks 是JAVA的核心框架 上层JAVA层,下层C驱动层
Android FrameWork 底层开发_第9张图片
Andorid 原生的应用在packages/app 目录下面
Android packages/app

分析编译过程:

Android FrameWork 底层开发_第10张图片

  • build/envsetup.sh 分析:
  1. 加载编译命令
  2. 加载平台信息
    如下 envsetup.sh 内容 里面有 mm miAndroid FrameWork 底层开发_第11张图片
    lunch ,mm ,mmm 命令 执行sudo build/envsetup.sh 命令后 加载这些命令
    会 includeing device/* 的文件, 会多了一些命令比如: mm,mma ,lunch等命令
    Android FrameWork 底层开发_第12张图片
  3. 查看Lunch 命令:
    其中包含各种命令版本
    Android FrameWork 底层开发_第13张图片
    在分析lunch 在/etc/profile文件中查看到配置:
    同样lunch 中修改代码减少分支
    Android FrameWork 底层开发_第14张图片

选择fiber-a31st 分支

  1. 运行当前分支下*.mk 命令,会将当前分支代码覆盖device 目录下的东西
  2. mmm external/libpng 将修改的文件更新
  3. Android FrameWork 底层开发_第15张图片

你可能感兴趣的:(Java,基础知识)