ASOP环境搭建

1、环境:

 

sony教程

https://developer.sony.com/develop/open-devices/guides/aosp-build-instructions/build-aosp-android-android-10-0-0

Ubuntu下载:tuijian18

优麒麟14.04:

http://www.ubuntukylin.com/downloads/download.php?id=38

 

大连东软信息学院镜像网站:http://mirrors.neusoft.edu.cn/ubuntu-releases/

ubuntu 版本14:

http://mirrors.neusoft.edu.cn/ubuntu-releases/trusty/ubuntu-14.04.6-desktop-amd64.iso

ubuntu 版本16:

http://mirrors.neusoft.edu.cn/ubuntu-releases/xenial/ubuntu-16.04.6-desktop-amd64.iso

ubuntu 版本18:

http://mirrors.neusoft.edu.cn/ubuntu-releases/bionic/ubuntu-18.04.3-desktop-amd64.iso

写入U盘工具:

USBWriter.exe

 

Google官方环境需求文档:

https://source.android.google.cn/setup/build/older-versions

  • Android 6.0 (Marshmallow) – AOSP master:Ubuntu 14.04 (Trusty)
  • Android 2.3.x (Gingerbread) – Android 5.x (Lollipop):Ubuntu 12.04 (Precise)
  • Android 1.5 (Cupcake) – Android 2.2.x (Froyo):Ubuntu 10.04 (Lucid)

 

如果用虚拟机,装完ubuntu系统,别忘了先添加快照!

每一步都加快照!

修改Ubuntu软件下载源:

#先切换到root

sudo su

 

#备份:

cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo apt-get install vim 
#打开文件:
vim /etc/apt/sources.list
gedit /etc/apt/sources.list

#全选,删除:

ggvG

 

换镜像源,找到对应版本

https://developer.aliyun.com/mirror

 

 

#保存退出 :wq

更新:

sudo apt-get -y update
sudo apt-get -y upgrade  --fix-missing

依赖安装:

sudo apt-get install -y  --fix-missing vim lrzsz axel git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip libncurses5

 

JDK安装:

#查看已安装软件:

dpkg -l | grep openjdk

 

#在ubuntu14安装open jdk 8:https://blog.csdn.net/wukery/article/details/79467468

#1. 添加openjdk8的第三方源

sudo add-apt-repository ppa:openjdk-r/ppa

#2. 执行更新

apt-get update

#3. 安装openjdk8

sudo apt-get install openjdk-8-jdk

#4. 选择版本

sudo update-alternatives --config java
sudo update-alternatives --config javac

#5. 确认安装成功

java -version
#openjdk version "1.8.0_91"

 

#jdk8安装:

#创建目录:

mkdir /root/jdk/
cd /root/jdk

#下载:

wget https://code.aliyun.com/kar/oracle-jdk/raw/3c932f02aa11e79dc39e4a68f5b0483ec1d32abe/jdk-8u251-linux-x64.tar.gz
tar xvf jdk-8u251-linux-x64.tar.gz

#修改配置文件:

vim /etc/profile

#在最后添加:

export JAVA_HOME=/root/jdk/jdk1.8.0_251
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

#刷新生效:

source  /etc/profile

 

给16G交换空间:

https://www.linuxidc.com/Linux/2015-08/122142.htm

 

free -m
mkdir swap
cd swap
dd if=/dev/zero of=swap bs=4M count=4096
mkswap swap
swapon swap
free -m

 

VNC安装:

https://cloud.tencent.com/developer/labs/lab/10294

关于永久性修改环境变量:

https://blog.csdn.net/lk13636244310/article/details/88377308

后台运行:

nohup

如果是ubuntu18,要装python2:

To install Python 2 version on Ubuntu 18.04 open up terminal and enter:

sudo apt install python-minimal

python --version

2、下载源码:

Google官方文档:

https://source.android.google.cn/setup/build/downloading

科大文档:

https://lug.ustc.edu.cn/wiki/mirrors/help/aosp

 

安装repo工具:

mkdir ~/bin
PATH=~/bin:$PATH
curl -sSL  'https://gerrit-googlesource.proxy.ustclug.org/git-repo/+/master/repo?format=TEXT' base64 -d > ~/bin/repo
chmod a+x ~/bin/repo
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
cd ~

 

#仓库文件替换为:

https://gerrit-googlesource.proxy.ustclug.org/git-repo

vim ~/bin/repo

 

或者应该是这么装:

sudo apt-get install repo

 

#其实该直接用清华的repo安装:

https://mirrors.tuna.tsinghua.edu.cn/help/git-repo/

 

curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
chmod +x repo

#更新

repo的运行过程中会尝试访问官方的git源更新自己,如果想使用tuna的镜像源进行更新,可以将如下内容复制到你的~/.bashrc里

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

 

并重启终端模拟器。

 

下载源码有两种方法:

下载方法:使用axel下载:

axel -n 10 https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-20200101.tar 

 

使用md5sum校验:

78f3ffa190a1978da4cfcca38c55c4fc  aosp-20200101.tar

方法一:

 

#创建仓库文件夹

mkdir android-source-sync
cd android-source-sync

#初始化仓库:

repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest

 

#某个特定版本:

repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-4.0.1_r1

 

#或者使用清华的Android7:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-7.0.0_r3

 

#版本代号在这里看:https://source.android.google.cn/setup/start/build-numbers#source-code-tags-and-builds

 

repo init -u git://cmcc.mirrors.ustc.edu.cn/aosp/platform/manifest -b android-1.6_r1.2

 

#开始同步:

repo sync

#也可以设置多线程:

repo sync -j4

 

方法二:

在这里能看见清华所有历史包:

https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/

清华源同步:

https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

 

#下载最新包:

wget -c -t 0 https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar

 

#或者下载16年最小的,只有16G:

wget  -c -t 0 https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-20160806.tar

 

#解压:

tar -xvf aosp-latest.tar

 

#进入解压得到的aosp目录:

cd aosp

 

# 这时 ls 的话什么也看不到,因为只有一个隐藏的 .repo 目录

# 正常同步一遍即可得到完整目录

repo sync -j4

# 或仅checkout代码:

repo sync -l

 

3、编译:

https://source.android.google.cn/setup/build/building

开启编译缓存:

export USE_CCACHE=1
mkdir ~/ccache-location
export CCACHE_DIR=/root/ccache-location
prebuilts/misc/linux-x86/ccache/ccache -M 60G

 

开始编译:

source build/envsetup.sh
lunch 1
m -j4

或者是后台运行:

nohup make -j4 > compile-log.txt &
tail -f compile-log.txt

#使用 jobs 查看后台运行命令

使用Docker编译:

https://android.googlesource.com/platform/build/+/master/tools/docker

 

4、错误

报错:

Created filesystem with 11/4224 inodes and 1302/16896 blocks

out/target/product/generic/cache.img maxsize=70654848 blocksize=2112 total=69206016 reserve=713856

[ 11% 1411/12209] Building with Jack: ...work_intermediates/dex-dir/classes.dex

FAILED: /bin/bash out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/dex-dir/classes.dex.rsp

Out of memory error (version 1.2-rc4 'Carnac' (298900 f95d7bdecfceb327f9d201a1348397ed8a843843 by android-jack-team@google.com)).

GC overhead limit exceeded.

 

解决办法:

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g"

./prebuilts/sdk/tools/jack-admin kill-server

./prebuilts/sdk/tools/jack-admin start-server  

5、运行:

源码在线阅读:https://www.androidos.net.cn/

https://www.androidos.net.cn/android/7.0.0_r31/xref

https://www.androidos.net.cn/android/7.0.0_r31/xref/packages/apps/Contacts

https://www.androidos.net.cn/android/7.0.0_r31/xref/packages/apps/Contacts/res/values-zh-rCN

 

https://www.androidos.net.cn/android/7.0.0_r31/xref/packages/apps/Contacts/AndroidManifest.xml

 

https://www.androidos.net.cn/android/8.0.0_r4/xref/packages/apps/Contacts/res/values-zh-rCN/strings.xml

https://www.androidos.net.cn/android/8.0.0_r4/xref/packages/apps/Contacts/res/mipmap-xxxhdpi/ic_contacts_launcher.png

 

模拟器运行:

 

linux下:

运行emulator

linux下,把sdk加入环境变量:

echo "export PATH=/home/cqh:$PATH" >> /etc/profile

执行

source /etc/profile 

 

windows下:

启动adb server

adb nodaemon server

 

不选avd

emulator -system sytem.img -data userdata.img -ramdisk ramdisk.img

列出avd

emulator -list-avds

选择avd运行

emulator -avd Nexus_5X_API_24  -system system.img -ramdisk ramdisk.img -initdata userdata.img

清空数据运行

emulator -avd Nexus_5X_API_24 -wipe-data -system system.img -ramdisk ramdisk.img -initdata userdata.img

 

说明:emulator是在/working/android4.0/out/host/linux-x86/bin目录下的,也就是编译后生成的,看上面的命令,说明得把这个目录弄进path里面。

 

https://www.cnblogs.com/fishoneseaatblog/p/4058366.html

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows as 调试ASOP(Android 开源项目)是指使用 Windows 操作系统来调试和开发 Android 开源项目。 在过去,Android 开发人员通常使用 Linux 环境来进行开发和调试。然而,随着 Windows 操作系统的发展和普及,越来越多的开发人员开始选择在 Windows 系统上进行 Android 开发。为了满足这一需求,微软推出了一系列的工具和环境,使得在 Windows 上进行 Android 开发变得更加便捷和高效。 首先,Windows 提供了 Android Studio,这是一个强大的集成开发环境 (IDE),提供了丰富的开发工具和功能。开发人员可以使用 Android Studio 来编写、测试和调试 Android 应用程序。此外,Android Studio 还支持通过模拟器对应用程序进行测试,而无需实际的物理设备。 其次,微软还提供了一系列的命令行工具和调试器,使得在 Windows 上调试 ASOP 更加方便。例如,开发人员可以使用 adb (Android Debug Bridge) 工具来与 Android 设备交互,并执行各种调试和测试操作。此外,还可以使用 Windows 上的虚拟机来模拟运行 Android 设备,以便更加方便地进行调试。 最后,微软还与谷歌和其他厂商合作,将 Windows 和 Android 生态系统进行了深入整合。例如,在最新的 Windows 版本中,可以直接从 Windows Store 下载和运行 Android 应用程序,并与桌面应用程序无缝集成。 总之,Windows as 调试 ASOP 提供了一种方便和高效的开发环境,使得在 Windows 上进行 Android 开发变得更加便捷。通过使用 Windows 提供的工具和平台,开发人员可以更加轻松地编写、测试和调试 Android 应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值