[Android] ubuntu虚拟机上搭建 Waydroid 环境

这篇具有很好参考价值的文章主要介绍了[Android] ubuntu虚拟机上搭建 Waydroid 环境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.安装虚拟机




2.安装waydroid

Ubuntu/Debian and derivatives

For Droidian and Ubuntu Touch, skip directly to the last step

  • Install pre-requisites

sudo apt install curl ca-certificates -y
  • Add the official repository

curl https://repo.waydro.id | sudo bash

If the script fails to detect your distribution, you can provide a valid option by appending -s <DISTRO>. Currently supported values are: focal, jammy, kinetic, lunar, mantic, bookworm, bullseye, sid

  • Install waydroid

sudo apt install waydroid -y

Then start Waydroid from the applications menu.

waydroid,Android framework,waydroid




 3.如何使用

1. 启动container

sudo waydroid container start

2. 新开一个终端,创建一个session(不要使用sudo

waydroid session start

出现如下输出说明启动成功

"Android with user 0 is ready"

3. 全屏模式启动Waydroid

waydroid show-full-ui




4.可能遇到的问题

问题 1:如果是mobaxterm启动,可能会有如下问题

如果没有启动 session ,会有如下报错:

/home/yk# waydroid app install app-debug.apk
[16:15:09] WayDroid session is stopped

waydroid对于桌面协议有要求,只能是wayland,不能是 tty 和 x11,如果配置不当会出现如下错误:

ERROR: org.freedesktop.DBus.Error.Spawn.ExecFailed: /usr/bin/dbus-launch terminated abnormally with the following error: MoTTY X11 proxy: Unsupported authorisation protocol
Autolaunch error: X11 initialization failed.

 ERROR: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

更多类似问题:WAYLAND_DISPLAY is not set, defaulting to "wayland-0" · Issue #771 · waydroid/waydroid · GitHub

解决方法 :

建议使用weston来启动waydroid。

  • 安装

sudo apt install weston

  • 启动,可以在tty终端中启动,比如MobaxTerm

weston

  • 在弹出界面中点击左上角的terminal图标开启一个命令行终端
  • 启动session,只需要启动一次

waydroid session start

  • 开启lineageOS桌面

waydroid show-full-ui

  • lineageOS的左上角也有terminal启动图标,点击后安装apk

waydroid app install app.apk

  • adb连接waydroid android虚拟机

Grab waydroid IP address from Android Settings-> About

And start adb:

adb connect <IP>:5555

如果需要开发者权限,连续点击 setting->About->Build Num


问题2 :虚拟机使用 waydroid show-full-ui 没反应

如果使用虚拟机运行Waydroid或者是 Nvidia 显卡,则会出现 waydroid无法启动。

解决方法 :

You can force Waydroid to run without GPU acceleration by modifying the waydroid configuration file:

nano /var/lib/waydroid/waydroid.cfg

Add the following lines in the [properties] section:

ro.hardware.gralloc=default

ro.hardware.egl=swiftshader

Apply the configuration with:

sudo waydroid upgrade -o




 5.下载waydoird 对应的 lineage 源码&&编译 lineage 源码

1. 同步仓库:

repo init -u https://github.com/LineageOS/android.git -b lineage-18.1 --git-lfs

repo sync build/make

可能需要安装的rpm包有:

git-lfs

2.下载 local_manifests

wget -O - https://raw.githubusercontent.com/waydroid/android_vendor_waydroid/lineage-18.1/manifest_scripts/generate-manifest.sh | bash

3. 下载源码,这步可能会要持续很久

Then to sync up:

repo sync

4. 打Waydroid的最新补丁

After that is complete, we apply the Waydroid patches:

apply-waydroid-patches

5. 开始编译

Please see the LineageOS Wiki for building environment setup.

5.1 Waydroid Build Commands:

. build/envsetup.sh

5.2 lunch

这一步一定要选对,因为下一步编译会持续很久,选错了就浪费很多时间

arm架构

lunch lineage_waydroid_arm-userdebug

lunch lineage_waydroid_arm64-userdebug

x86架构

lunch lineage_waydroid_x86-userdebug

lunch lineage_waydroid_x86_64-userdebug

5.3 开始编译

make systemimage -j$(nproc --all)

make vendorimage -j$(nproc --all)

5.4 转换镜像为可以烧录的文件

Image Generation From Sparse Image:

The default output of the AOSP build system is an "Android Sparse Image". We need raw fileystems instead. From the same terminal where you just built a system and a vendor image, run:

simg2img $OUT/system.img ~/system.img

simg2img $OUT/vendor.img ~/vendor.img

to obtain your target raw images at ~/system.img and ~/vendor.img

6. 可能遇到的问题

Local Manifest:

To manually regenerate the local_manifests, we also have added a function to do so

waydroid-generate-manifest

After doing that you will want to resync (this will wipe out any local changes, so make sure you save your work to a different branch)

参考:

Compile Waydroid - Lineage OS based images - Waydroidhttps://docs.waydro.id/development/compile-waydroid-lineage-os-based-images#how-to-build




6.替换自己编译的 lineage 镜像,替换原有 waydroid 默认android 镜像

6.1 创建镜像启动路径

sudo mkdir -p /etc/waydroid-extra/images

6.2 使用第五步编译好的镜像文件

cp vendor.img /etc/waydroid-extra/images

cp system.img /etc/waydroid-extra/images

注意:waydroid --version 1.3.3之前的版本,镜像存放路径为/usr/share/waydroid-extra/images/

6.2 使用第三方编译好的镜像文件

 download the images (e.g. x86_64 gapps system and mainline vendor) manually from sourceforge 

sudo unzip lineage-*-system.zip -d /etc/waydroid-extra/images

sudo unzip lineage-*-vendor.zip -d /etc/waydroid-extra/images

rm lineage-*-system.zip lineage-*-vendor.zip

6.3 重新加载镜像

sudo waydroid init -f

参考:Using custom Waydroid images - Waydroidhttps://docs.waydro.id/faq/using-custom-waydroid-images文章来源地址https://www.toymoban.com/news/detail-848725.html




7. LineageOS 和 AOSP 版本对应关系

Version AOSP version Last build release date
18.1 11 (Red Velvet Cake) (Current)
19.1 12.1 (Snow Cone) (Current)
20 13 (Tiramisu) (Current)

到了这里,关于[Android] ubuntu虚拟机上搭建 Waydroid 环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ubuntu22.04 x86环境上使用QEMU搭建arm虚拟机

    apt-get -y install qemu apt-get -y install bridge-utils apt-get -y install vnc4server apt-get -y install qemu-kvm apt install -y qemu-system-arm apt-get -y install libvirt0 apt-get -y install libvirt-daemon apt-get -y install libvirt-daemon-system 安装完成后检查: virsh version ls /usr/bin/|grep qemu wget http://releases.linaro.org/components/kernel/

    2024年02月07日
    浏览(64)
  • 5分钟搞定mac 与装在utm虚拟机上的ubuntu文件共享设置

    今天在网上找了一圈都没找到方法,没想到google一下第一个视频就是教程。我照着做了几分钟就搞定了,非常简单,在这里分享一下方法。 : mac utm 文件分享 share 首先点击utm里已经安装好的虚拟机,在右侧共享目录的选项中选择任一mac本地文件夹都可(有的文章里

    2024年02月07日
    浏览(29)
  • Ubuntu-Docker-STF(devicefarmer)环境搭建 (android 12)

    if phone and server not connected with physical usb cable, you can use below command 1.download docker for win 2.打开PowerShell,更新 wsl  wsl --update, 然后重启 3. https://github.com/nikosch86/stf-poc 下载stf-poc-master文件夹到docker服务所在机器上,要做的修改如下:     1) .env文件:将ip改成docker服务所在机器的i

    2024年02月07日
    浏览(25)
  • 在VM虚拟机上搭建MariaDB数据库服务器

    例题:搭建MariaDB数据库服务器,并实现主主复制。 1.在二台服务器中分别MariaDB安装。 2.在二台服务器中分别配置my.cnf文件,开启log_bin。 3.在二台服务器中分别创建专用于数据库同步的用户replication_user,并授权SLAVE。) 4.同步配置,并启用SLAVE复制 5.完成并测试,要求创建“

    2024年02月21日
    浏览(39)
  • 在VM16.X虚拟机上安装Android-X86 9.0

    前提:电脑已安装好VM虚拟机, 第一步:下载好安卓9.0系统 https://www.fosshub.com/Android-x86.html 第二步:开始安装 1、新建虚拟机(按图片上的点一下步)    点浏览,确定虚拟机位置 处理器配置建议2个,核心数也为2,这里以后还可以调。  这是设置内存,建议4G。这以后也可以

    2023年04月13日
    浏览(62)
  • 跳板机上接口自动化环境搭建实践~Python和Pycharm环境搭建

    公司基于安全策略,所有的本机都不能直连数据库和服务器,均需要通过跳板机来连接数据库和服务器,相应的所有的开发工作、联调工作或者排查问题工作都放在了跳板机上操作 1、用管理员账号登录跳板机 2、从本地拷贝Python安装包到跳板机上 3、管理员身份运行安装Pyt

    2024年02月02日
    浏览(34)
  • 从头搭建Android源码编译环境(Ubuntu 18.04 / 20.04 / 22.04)

    在新安装的Ubuntu上(版本20.04LTS),完成搭建Android源码编译环境步骤如下。 顺带说一句,当前用的比较多的Ubuntu是18.04和20.04,在实际项目中一直在用,可用性和稳定性都没问题。 最新的Ubuntu22.04版本,系统默认的二进制库变化比较大,编译Android源码有问题(实测过,没细研

    2024年02月06日
    浏览(101)
  • windows11下Qt6.5开发环境安装及QT for Android环境搭建(含虚拟机的创建)

    最近想升级Qt6.5及顺便配置Android开发环境。于是在网上找了各种教程,结果在配置Android开发环境都以失败告终。最终花了很长时间才搞掂。接下来分享比较好的安装方法以及安装注意事项。 建议用中科大或清华的镜像下载在线安装器,官网的很慢。链接如下: 下载在线安装

    2024年02月13日
    浏览(47)
  • 【openstack-T版 CentOS8 搭建记录 - VMware虚拟机上部署】 搭建过程 密码对照表

    这里的高亮部分是openstack-Train中 官网配置文档中的密码标识,在本专栏实操中密码对照表如下,在真实部署中,可以参照做密码对照表,方便管理。 Controller_Login_PASS : 0000@root #controller登录密码 Compute_Login_PASS :root@0001 #compute登录密码 Mysql_PASS : 0000 #数据库密码 RABBIT_PASS : opens

    2024年02月10日
    浏览(30)
  • windows系统proteus中Ardunio Mega 2560和虚拟机上Ubuntu系统CuteCom进行串口通信

    在文章利用proteus实现串口助手和arduino Mega 2560的串口通信-CSDN博客 中,实现了windows系统的proteus中Ardunio Mega 2560和SSCOM通过虚拟串口进行通信。虚拟串口的连接示意图如下图所示。 在文章windows系统和虚拟机上ubuntu系统通过虚拟串口进行通信-CSDN博客 中,实现了windows系统的SSC

    2024年02月04日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包