Waydroid是Anbox配合Halium技術開發的LXC Android容器,可在GNU/Linux系統執行Android APP。
- 作業系統:Arch Linux
- Waydroid映像檔版本:LineageOS 18 (Android 11)
- CPU: Intel I5-7400
- GPU: Intel UHD 630
0. Waydroid特色#
以下是Waydroid的特色功能:
- Linux平台自由開源的Android容器解決方案
- 支援x86與ARM架構的裝置
- 與宿主機共用剪貼簿
- 直接使用電腦顯示卡硬體加速,跑3D遊戲、看影片沒什麼問題。
- 內建GAPPS,可以使用Google Play
- 支援給x86裝置安裝ARM轉譯器
- 支援安裝Widevine DRM模組
- 支援Magisk
1. 設定顯示卡與Linux核心#
根據開發者說法,由於Nvidia閉源驅動不照圖形驅動程式標準走的緣故,目前Waydroid只支援Intel和AMD的顯示卡,Nvidia顯示卡會沒畫面,若您為Nvidia顯示卡建議改用其他Android模擬器方案
切換至Wayland#
Waydroid必須使用Wayland顯示協定,用此指令檢查目前的工作階段是否為Wayland:
echo $XDG_SESSION_TYPE
若顯示X11代表不是Wayland。GNOME和KDE可在登入畫面切換至Wayland工作階段。
如果想在X11工作階段使用Waydroid,請安裝Weston,啟動巢狀Wayland工作階段。
安裝binder核心模組#
Waydroid要求Linux核心支援binder核心模組,但Arch Linux預設的linux
核心並無開啟此選項,因此需要從AUR安裝binder_linux-dkms
補齊。
sudo pacman -S linux-headers
yay -S binder_linux-dkms
安裝後載入binder核心模組
sudo modprobe binder-linux devices=binder,hwbinder,vndbinder
設定開機自動載入核心模組
echo "binder_linux" | sudo tee -a /etc/modules-load.d/binder_linux.conf
echo "options binder_linux devices=binder,hwbinder,vndbinder" | sudo tee -a /etc/modprobe.d/binder_linux.conf
2. 安裝Waydroid#
- 安裝以下套件,讓Linux與Waydroid共享剪貼簿
sudo pacman -S wl-clipboard xclip
yay -S python-pyclip
- 從AUR安裝Waydroid
yay -S waydroid
- 初始化Waydroid,下載含有GAPPS的Android系統映像檔
sudo waydroid init -s GAPPS -f
- 啟動Waydroid容器服務
sudo systemctl start waydroid-container
# 開機自動啟動
sudo systemctl enable waydroid-container
點選應用程式列表的「Waydroid」圖示開啟主畫面,或者使用指令:
waydroid show-full-ui
若Waydroid無法連上網路,開放UFW防火牆:
sudo ufw allow 53
sudo ufw allow 67
sudo ufw default allow FORWARD
sudo ufw reload
sudo systemctl restart waydroid-container
3. Waydroid的使用技巧#
解決沒網路、觸控沒反應、無法使用Play商店、ARM轉譯器等問題,參見Waydroid使用技巧