`
wcgdonot
  • 浏览: 92160 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android Framework源码下载及编译

阅读更多

学习了高焕堂先生的《Android应用框架原理》后,接触到了Ioc(Inversion of control,控制反转),想学习下Android应用框架,挽起袖子操刀直接冲着源码去了。

 

环境:VMWare + Ubuntu11.04

 

 

Linux build环境的配置:

 

1.2.6Gd的源码存储空间

2.安装Python2.4--2.7(Ubuntu11.04自带)

3.Git1.7

4.安装jdk

A.android2.3及以后版本需安装jdk6,android2.2及以前版本jdk5

 

B.安装jdk6:

$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"

$ sudo apt-get update

$ sudo apt-get install sun-java6-jdk

等待……tab键一路ok即可。

 

C.【说明】下载时间过长可离线安装。

在UBUNTU和Windows之间共享文件:

新建文件夹-->右键shareOperations-->安装Windows网络共享服务(smbclient)

-->restart the ression-->返回文件夹进行共享设置

5.安装包(Installing required packages)

64-bit:

sudo apt-get install git-core gnupg flex bison gperf build-essential \ zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \ x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \ libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \ libxml2-utils xsltproc

一路确定即可。

因为只是用于学习,到这里就完成了Linux build环境的配置了。

参考http://source.android.com/source/initializing.html

 

源码下载

 

1.安装Repo,“在本机建立分布仓库”,Repo是基于Git的一个管理工具.下载android源码时,当需下载源码包中某一个文件时,用git;而需下载整个源码包时,需用repo,这也是git和repo的区别。

$ mkdir ~/bin

$ PATH=~/bin:$PATH

 

$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo

$ chmod a+x ~/bin/repo

 

The SHA-1 checksum for repo is 29ba4221d4fccdfa8d87931cd73466fdc24040b5.

 

2.初始化Repo客户端(建立目录 AndroidSource_GB<版本>)

$ mkdir AndroidSource_2012_1_30

$ cd AndroidSource_2012_1_30

 

$ repo init -u https://android.googlesource.co

 按要求上邮箱什么的。

 

3.开始同步文件

$ repo sync 

默认最新版本,如果想同步以前的版本,加一些tag

下载……6——8个小时(若下载中断,重新执行repo sync即可)

验证Git Tag(拿本地代码与所下载代码进行比较,仅用于学习的话就不用这一步了)

参考http://source.android.com/source/downloading.html

 

 

Build the System

 

参考http://source.android.com/source/building.html,这就算了吧。

调用模拟器emulator启动编译好的ROM。

make不编译内核,更改了驱动后才编译内核。

 

 

说明:

Installing required packages选的是32-bit时,build可能会有can not build on System 32bit的问题,应该是Ubuntu11.04的bug,打个什么补丁吧好像。

如果是通过代理上网的话需另行设置。

0
0
分享到:
评论

相关推荐

    Android12版本-framework源码jar

    自己编译的 Android12版本-framework源码jar 来源:AOSP源分支 android-12.1.0_r11

    android Framework源码最新版

    Android Framework源码是Android操作系统的核心组成部分,包含了系统服务、库和API框架,是开发者深入理解Android系统工作原理的重要参考资料。这份最新的源码版本提供了一个深入洞察Android系统内部机制的机会,...

    Android framework

    `framework_intermediates-classes-full-debug.jar` 文件则很可能是Android Framework的编译中间产物,包含了全部的调试模式下的类。 在Android Framework中,以下是一些关键的知识点: 1. **Activity**: 是...

    android 14 framework jar 包

    android14 framework jar 包

    android 10 中 framework base 仓核心源码

    本资源为 android 10 (API 29)中 framework 下 base 仓的核心源码,主要包含如下内容: /frameworks/base/core /frameworks/base/services 另外,资源文件中包含 android.iml、android.ipr、android.iws 3个文件,...

    Android 源码编译的jar包

    在Android开发中,源码编译的jar包是开发者深入理解系统运作、定制化系统或者进行二次开发的重要工具。本文将详细阐述如何编译Android源码以生成`classes.jar`,以及这个过程中的关键知识点。 首先,让我们了解`...

    反编译工具,可以将android生成的framework.jar反编译为class,并且用jd-gui 查看修改是否编译进来

    标题和描述提到的是一种这样的场景,即利用反编译工具将Android的`framework.jar`转换成可读的Java类(`.class`),然后使用JD-GUI来查看和验证修改是否成功编译。 首先,`framework.jar`是Android系统的核心组件之...

    安卓编译工具framework-res.apk

    本文将深入探讨`framework-res.apk`的编译过程、作用以及与Android系统的关联。 首先,`framework-res.apk`是Android操作系统的核心组成部分,它提供了Android系统的用户界面元素,如系统图标的样式、布局文件、...

    android framework 源代码

    12. **Android运行时(ART)**:Android运行时负责执行Dalvik字节码或者自Android 5.0 Lollipop开始的AOT(Ahead-Of-Time)编译后的机器码。ART提供了垃圾回收机制和一些性能优化功能。 学习和理解Android Framework...

    android 输入法源码 eclipse可以编译

    在framework 里面才能编译. 对于开发输入法来说是在是不方便, 本人花费大量时间 移植到 window上jave 环境 Eclipse 上编译, 而且JNI 都被修改了,提供源码,可以自己编译. window下开发调试非常方便. 附带编译截图.

    如何单独编译Android源代码中的模块

    Android 模块单独编译详解 在 Android 源代码工程中,单独编译某个模块是一件很有必要的事情。尤其是在我们修改了某个模块或新增了自己的模块时,重新编译整个 Android 系统镜像 system.img 是非常耗时的。这时,...

    android 7.0 源码下载(24)

    下载源码后,你可以通过Android Studio导入项目进行编译和分析。Android Studio提供了对源码的强大支持,包括代码导航、调试和重构。在导入时,确保已安装了适用于Android Nougat的NDK和SDK。 Android 7.0的关键...

    Android系统Framework层源码分析(免积分)

    本篇内容将深入探讨Android Framework层的源码分析,帮助你理解这一关键层次的工作原理。 1. **系统启动流程** - Android系统的启动始于Zygote进程,它预先加载了大部分核心库,为其他进程提供快速孵化的基础。 -...

    android2.2源码编译结果 class.jar (framework_intermediates目录下)

    android2.2源码编译结果 \android2.2\out\target\common\obj\JAVA_LIBRARIES\framework_intermediates

    Android源码-使用Android Studio 阅读Android Framework

    源码提供了相关的编译方式。 1.生成idegen.jar文件。 在源码根目录下输入指令: xx@xx:~/code/android_27$ source build/envsetup.sh 自动输出 including device/generic/mini-emulator-arm64/vendorsetup.sh ...

    Android11.0最新Framework解析

    Android11.0 系统分析 Android11.0 启动分析 Android11.0 最新Framework解析 Android11.0 Binder通信原理

    Android源码编译参考文档.zip

    在Android系统开发中,理解和掌握源码编译过程至关重要,特别是对于那些致力于Android系统或Framework开发的专业人士。本文将深入探讨“Android源码编译参考文档”中的关键知识点,包括高通编译参考和Android Build ...

    如何深入学习AndroidFramework

    3. **AOSP 源码编译**:学习如何配置编译环境,编译整个AOSP系统,包括设备树和kernel。 4. **HAL与硬件服务**:掌握HAL(Hardware Abstraction Layer)的编写,理解和实现硬件驱动的抽象接口。 5. **基础组件**:...

    android源码编译及rom制作.pptx

    ### Android源码编译及ROM制作 #### 一、概览 在《android源码编译及rom制作.pptx》这份文档中,主要讲解了如何进行Android源码的编译以及ROM的制作过程。这一过程对于那些希望深入了解Android操作系统工作原理、...

Global site tag (gtag.js) - Google Analytics