获取Android4.0源码,也可以参考Android官网的下载步骤:官网下载参考

第一步,首先建立repo环境,把此目录添加到环境变量中。
mkdir ~/bin
PATH=~/bin:$PATH

第二步,下载repo工具。
sudo apt-get install git-core curl
curl
https://dl-ssl.google.com/dl/googlesource/git-repo/repo> ~/bin/repo
chmod a+x ~/bin/repo

第三步,建立源码目录,注意源码目录所在的磁盘要保留有20G的空间。
mkdir ~/MyAndroid
cd ~/MyAndroid
repo init -u
https://android.googlesource.com/platform/manifest-b android-4.0.1_r1

第四步,开始下载源码。
repo sync

下载完了之后源码一共4.2G,我用了大概3个多小时。

编译Android4.0源码,也可以参考Android官网的编译步骤:官网编译参考

第一步,安装JDK。4.0源码的编译需要JDK1.6。先下载jdk-6u23-linux-i586.bin,然后安装。下载地址:分卷1分卷2
cd /usr
sudo mkdir java
cd java
sudo cp jdk-6u23-linux-i586.bin所在目录 ./
sudo chmod 755 jdk-6u23-linux-i586.bin
sudo sh jdk-6u23-linux-i586.bin

第二步,设置JDK环境变量,把以下命令添加到主文件夹目录下的.bashrc文件中,然后执行source命令使其生效。
export JAVA_HOME=/usr/java/jdk1.6.0_23
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/bin/tools.jar:$JRE_HOME/bin
export ANDROID_JAVA_HOME=$JAVA_HOME

相应的命令:
sudo gedit ~/.bashrc
source ~/.bashrc

第三步,安装依赖的包。
sudo apt-get install git-core bison zlib1g-dev flex libx11-dev gperf
sudo aptitude install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev

第四步,开始准备编译。
source build/envsetup.sh
lunch full-eng
make

编译完之后,编译产生的out目录一共有11G多,用时大概4个多小时。编译完成后源码目录会多一个v8.log文件。

下面启动模拟器来看看4.0的界面。
在源码目录新建start.sh文件,用来启动模拟器的,往此文件中添加如下内容。4.0源码编译完后sdk\emulator文件夹下没有skin目录,我们可以直接把2.3的拷贝过来,但是这里我没有弄,就直接是默认皮肤了。

[java] view plain copy
  1. ANDROID_HOME=.
  2. ANDROID_EMULATOR=$ANDROID_HOME/out/host/linux-x86/bin/emulator
  3. ANDROID_SYSDIR=$ANDROID_HOME/out/target/product/generic
  4. ANDROID_DATAIMG=$ANDROID_HOME/out/target/product/generic/userdata.img
  5. ANDROID_SKINDIR=$ANDROID_HOME/sdk/emulator/skins
  6. ANDROID_KERNEL=$ANDROID_HOME/prebuilt/android-arm/kernel/kernel-qemu-armv7
  7. ANDROID_SKIN=WVGA800
  8. #ANDROID_SKIN=HVGA
  9. $ANDROID_EMULATOR\
  10. -audiooss\
  11. -sysdir$ANDROID_SYSDIR\
  12. -partition-size128\
  13. -data$ANDROID_DATAIMG\
  14. -kernel$ANDROID_KERNEL\
  15. -skindir$ANDROID_SKINDIR\
  16. -skin$ANDROID_SKIN\
  17. -sdcard$ANDROID_HOME/sdcard.img\
  18. -show-kernel\
  19. -shell\
  20. -system$ANDROID_SYSDIR/system.img\
  21. -dpi-device240

运行start.sh文件启动模拟器,以下是运行的截图。


更多相关文章

  1. Still no compatible AVDs with target 'Google APIs'
  2. 字节跳动面试官:Android源码的Binder权限是如何控制?
  3. 将android 8.1刷到nexus 6p上
  4. 单独编译Android(安卓)app模块
  5. android source 把自己的apk 编译进 system.img (system/app)的
  6. android mtk平台内置apk,可卸载恢复出厂设置还在
  7. eoeandroid社区转发
  8. Android(安卓)开发笔记 第三季 FragmentPagerAdapter
  9. android的make错误

随机推荐

  1. flutter 与 android 混合开发 以及 Andro
  2. 如何使android应用程序使用当前的主题样
  3. Android开发随想:iPhone和Android之间的对
  4. android开发每日汇总【2011-11-26】
  5. Android中IPC框架的理解
  6. android:screenOrientation属性(转)
  7. Android开发随想:iPhone和Android之间的对
  8. ListView的一些应用
  9. 连线:纯正Android已死 “Android兼容设备
  10. Android系统自带样式(@android:style/)