运行在树莓派上的android 模拟器

背景:

  • 苹果的m1芯片是基于arm64架构的, google为了支持苹果的机器上进行开发, 讲emulator移植到了arm64的板子上,也就给了我们机会,让我们能够比较简单的在类似树莓派的机器上面能够直接运行android的arm64的镜像。

构筑和运行过程

  1. 模拟器源代码获取和交叉编译
repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b emu-master-dev --depth=1 
repo sync -qcj 12
cd external/qemu
pip install absl-py
pip install urlfetch
sudo apt-get install crossbuild-essential-arm64
python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64
  1. 编译并且打包, 添加dist 目录存放编译出来的结果
python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64 --dist dist
# 解压dist下的包含emualtor的程序
cd dist
unzip  sdk-repo-linux_aarch64-emulator-None.zip
  1. 设定android emualtor和android sdk的位置
export ANDROID_SDK_ROOT=${avd所在的根目录}
export ANDROID_HOME=${sdk 的根目录吗, 根目录下包含了platforms。platform-tools, system-images}
  1. 运行emualtor
./emulator @Pixel_5_API_28 -no-window -verbose -show-kernel

启动起来的log如下:
在这里插入图片描述

参考链接:

https://gist.github.com/Try-Parser/b7106d941cc9b1c9e7b4c7443a7c3540

存在的问题

  1. 使用的tf卡的性能比较差, 运行的是有会有大量的iowait, 使用的体验不怎么好,可以使用好一点的tf卡试试。
  2. 构筑的环境使用的是ubuntu20.04 使用的库会有glibc 2.18的依赖,所以运行的环境需要有glibc2.18以上,才能进行运行。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zeloas

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值